itthon / Internet / Operator UNION készletekkel való munkavégzéshez. Union of UNION és UNION ALL SQL-ben - leírás és példák Paraméterek vagy argumentum

Operator UNION készletekkel való munkavégzéshez. Union of UNION és UNION ALL SQL-ben - leírás és példák Paraméterek vagy argumentum

Ebben az oktatóanyagban megtudhatja, hogyan kell használni az SQL utasítást UNION ALL szintaxissal és példákkal.

Leírás

Az SQL UNION ALL operátor 2 vagy több SELECT utasításból származó eredményhalmazok kombinálására szolgál. Nem távolítja el a duplikált sorokat a különböző SELECT utasítások között (minden sor visszaadásra kerül).
Az UNION ALL minden SELECT utasításának ugyanannyi mezőt kell tartalmaznia az eredményhalmazokban azonos adattípusokkal.

Mi a különbség az UNION és az UNION ALL között?

  • Az UNION operátor eltávolítja az ismétlődő sorokat.
  • UNION ALL Nem eltávolítja az ismétlődő sorokat

Szintaxis

Az UNION ALL operátor szintaxisa SQL-ben.

Paraméterek vagy argumentum

kifejezés1 , kifejezés2 , kifejezés_n A lekérni kívánt oszlopok vagy számítások táblák A táblák, amelyekből a rekordokat le kívánja kérni. A FROM záradéknak legalább egy táblázatot meg kell adnia a WHERE feltételekkel Nem kötelező. Feltételek, amelyeknek teljesülniük kell a rekordok kiválasztásához

jegyzet

  • Mindkét SELECT lekérdezésnek ugyanannyi kifejezést kell tartalmaznia
  • Az egyező kifejezéseknek azonos adattípussal kell rendelkezniük a SELECT lekérdezésekben. Például: a kifejezés1-nek azonos adattípussal kell rendelkeznie az első és a második SELECT utasításban is
  • Lásd még operátor

Példa - egyetlen mező azonos névvel

Nézzük meg, hogyan kell használni az SQL UNION ALL operátort, amely egyetlen mezőt ad vissza. Ebben az egyszerű példában mindkét SELECT utasítás mezőjének neve és adattípusa azonos lesz.
Például.

PgSQL

KIVÁLASZTJA a szállítóazonosítót

beszállítóktól

UNION ALL

KIVÁLASZTJA a szállítóazonosítót

rendelésekből

ORDER BY beszállítói_azonosító;

Ez az UNION ALL SQL példa többször visszaadja a beszállítói_id értéket az eredménykészletben, ha ugyanaz az érték jelenik meg a szállítók és a rendelések táblákban. SQL utasítás UNION ALL Nem eltávolítja a duplikációkat. Ha el szeretné távolítani az ismétlődéseket, próbálja meg az UNION operátort használni.
Most nézzük meg ezt a példát, és adjunk meg néhány adatot alább.

És végrehajtottad a következő UNION ALL utasítást.

PgSQL

SELECT beszállítói_azonosító A beszállítóktól UNION ALL SELECT beszállítói_azonosító A rendelésekből ORDER BY beszállítói_azonosító;

Amint ebben a példában látható, az UNION ALL minden beszállítói_id értéket vett a szállítók táblából, valamint a rendelések táblából, és egy kombinált eredménykészletet adott vissza. A duplikátumok nem lettek eltávolítva, amint azt a 2000-es beszállítói azonosító érték is mutatja, amely kétszer jelenik meg az eredményhalmazban.

Példa - különböző mezőnevek

Az egyes SELECT utasítások megfelelő oszlopainak nem kell azonos nevükkel rendelkezniük, de azonos adattípusokkal kell rendelkezniük.
Ha nem ugyanazok az oszlopnevek szerepelnek a SELECT utasításokban, ez kissé bonyolulttá válik, különösen, ha a lekérdezés eredményeit az ORDER BY záradékkal szeretné rendezni.
Nézzük meg, hogyan használhatjuk az UNION ALL operátort különböző oszlopnevekkel, és rendezzük a lekérdezés eredményeit.
Például.

PgSQL

Ebben az UNION ALL SQL példában, mivel a két SELECT utasításban szereplő oszlopnevek eltérőek, előnyösebb az ORDER BY záradékban szereplő oszlopokra az eredményhalmazban elfoglalt helyük alapján hivatkozni. Ebben a példában az eredményeket a beszállítói_azonosító / cégazonosító szerint növekvő sorrendbe rendeztük, amint azt az ORDER BY 1 jelzi. A szállítóazonosító/vállalatazonosító mezők az 1. pozícióban vannak az eredménykészletben.
Most nézzük meg közelebbről ezt a példát adatokkal.
Ha a beszállítói táblázat a következő rekordokkal volt feltöltve.

És végrehajtottad a következő lekérdezést, amely az UNION ALL kifejezést tartalmazza.

A többségben SQL lekérdezések egyetlen operátort használnak egy vagy több tábla adatainak visszaadására. SQL lehetővé teszi több külön lekérdezés egyidejű futtatását, és az eredmény egyetlen adathalmazként való megjelenítését. Az ilyen kombinált lekérdezéseket általában ún kombinációk vagy összetett lekérdezések.

1. Az UNION operátor használata

Lekérdezések nyelven SQL az operátor segítségével kombinálhatók UNIÓ. Ehhez minden kérést meg kell adni KIVÁLASZTÁSés helyezze közéjük a kulcsszót UNIÓ. A használt operátorok számának korlátai UNIÓ számú általános kérésben. Az előző részben megjegyeztük Hozzáférés nem rendelkezik alkotási képességgel teljes külső csatlakozás, most meglátjuk, hogyan érhetjük el ezt az operátoron keresztül UNIÓ.

KIVÁLASZTÁS *
A Sumproduct-ról BALRA CSATLAKOZÁS A Sellers ON oldalához Sumproduct.City = Sellers.City
UNIÓ
KIVÁLASZTÁS *

A Sumproduct-tól JOBBRA CSATLAKOZZON az eladók oldalához Sumproduct.City = Sellers.City

Látjuk, hogy a lekérdezés az első tábla összes oszlopát és a másikat is megjelenítette, függetlenül attól, hogy a másik táblában minden rekordnak van-e egyezése.

Azt is érdemes megjegyezni, hogy sok esetben ahelyett UNIÓ javaslatot használhatunk AHOL sok feltétellel, és hasonló eredményt kap. Mivel azonban UNIÓ a bejegyzések tömörebbek és érthetőbbek. A kombinált lekérdezések írásakor bizonyos szabályokat is be kell tartani:

  • kérés UNIÓ két vagy több állítást kell tartalmaznia KIVÁLASZTÁS, kulcsszóval elválasztva UNIÓ(azaz ha egy lekérdezés négy SELECT utasítást használ, akkor három UNION kulcsszónak kell lennie)
  • minden kérés a nyilatkozatban UNIÓ ugyanazokkal az oszlopokkal, kifejezésekkel vagy statisztikai függvényekkel kell rendelkeznie, amelyeket ráadásul ugyanabban a sorrendben kell felsorolni
  • Az oszlop adattípusainak kompatibilisnek kell lenniük. Nem kell azonos típusúnak lenniük, de ahhoz hasonlónak kell lenniük DBMS egyedileg konvertálhatja őket (például lehetnek különböző numerikus adattípusok vagy különböző dátumtípusok).

2. Kapcsolja be vagy ki az ismétlődő sorokat

Kérelem tőle UNIÓ automatikusan eltávolítja az összes ismétlődő sort a lekérdezés eredménykészletéből (azaz mondatként viselkedik AHOL több feltétellel egy nyilatkozatban KIVÁLASZTÁS). Ez az operátor viselkedése UNIÓ alapértelmezés szerint, de ezt módosíthatjuk, ha akarjuk. Ehhez az operátort kell használnunk UNION ALL ahelyett UNIÓ.

3. Összevont lekérdezések eredményeinek rendezése

Nyilatkozat végrehajtási eredmények KIVÁLASZTÁS záradék segítségével rendezve RENDEZÉS. A lekérdezések kombinálásakor a UNIÓ csak egy mondat RENDEZÉS használható, és az utolsó utasításban szerepelnie kell KIVÁLASZTÁS. Valójában a gyakorlatban nincs értelme az eredmények egy részét az egyik, a másik részét egy másik sorrendbe rendezni. Ezért néhány javaslat RENDEZÉS használata nem megengedett.

A leckében az unió-, metszés- és különbséglekérdezések műveleteinek használatáról lesz szó. Példák a használatára SQL lekérdezés Union, Exists, valamint a SOME, ANY és All kulcsszavak használata. Lefedett karakterlánc-függvények


Egy halmazon elvégezheti az egyesülés, a különbség és a derékszögű szorzat műveleteit. Ugyanezek a műveletek használhatók sql lekérdezésekben (műveletek végrehajtása lekérdezésekkel).

Egy speciális szó több lekérdezés kombinálására szolgál UNIÓ.
Szintaxis:

< запрос 1 >UNIÓ[MINDEN]< запрос 2 >

<запрос 1>UNIÓ<запрос 2>

Az Union SQL lekérdezés arra szolgál, hogy az egyes lekérdezések kimeneti sorait egyetlen eredményhalmazba vonja össze.

Ha használt paraméter ALL, akkor az összes duplikált kimeneti sor mentésre kerül. Ha a paraméter hiányzik, akkor csak egyedi sorok maradnak az eredményhalmazban.

Tetszőleges számú lekérdezést kombinálhat.

Az UNION operátor használatához több feltételnek kell teljesülnie:

  1. az egyes lekérdezések kimeneti oszlopainak számának azonosnak kell lennie;
  2. az egyes lekérdezések kimeneti oszlopainak adattípusonként (prioritási sorrendben) összehasonlíthatónak kell lenniük egymással;
  3. az eredményül kapott halmaz az első lekérdezésben megadott oszlopneveket használja;
  4. Az ORDER BY csak összetett lekérdezés végén használható, mert az összekapcsolás eredményére vonatkozik.

Példa: Számítógépek és laptopok árainak megjelenítése, valamint számuk (vagyis két különböző táblázatból történő kitöltés egy lekérdezéssel)


✍ Megoldás:
1 2 3 4 5 6 SELECT `Szám` , `Ár` FROM pc UNION SELECT `Szám` , `Ár` notebookból RENDELÉS `Ár' SZERINT

SELECT `Szám` , `Ár` FROM pc UNION SELECT `Szám` , `Ár` notebookból RENDELÉS `Ár' SZERINT

Eredmény:

Nézzünk egy bonyolultabb példát egy belső csatlakozással:

Példa: Keresse meg a terméktípust, a számítógépek és laptopok számát és árát


✍ Megoldás:
1 2 3 4 5 6 7 8 VÁLASSZA terméket. `Típus` , pc. `Szám` , `Ár` DB-RŐL BELSŐ CSATLAKOZÁS termék pc-n. "Szám" = termék. "Szám" UNION SELECT termék. `Típus` , notebook. `Szám` , `Ár` notebook BELSŐ CSATLAKOZÁSA termék ON notebookra. "Szám" = termék. "Szám" RENDELÉS "Ár" SZERINT

SELECT termék.`Típus` , pc.`Szám` , `Ár` DB-RŐL BELSŐ CSATLAKOZÁS termék pc-n.`Szám` = termék.`Szám UNION SELECT termék.`Típus` , notebook.`Szám`, `Ár` FROM notebook BELSŐ CSATLAKOZTATÁSA termék a notebookon.`Number` = termék.`Szám` ORDER BY `Price`

Eredmény:

SQL Union 1. Keresse meg az összes laptop és nyomtató gyártóját, cikkszámát és árát

SQL Union 2. Keresse meg az oroszországi gyártó által gyártott összes termék számát és árát

SQL létezési predikátum LÉTEZIK

Az SQL rendelkezik lehetőségekkel metszésponti és különbségi műveletek végrehajtására a lekérdezéseken – az INTERSECT záradékkal (metszéspont) és az EXCEPT záradékkal (különbség). Ezek a záradékok az UNION működéséhez hasonlóan működnek: az eredményhalmaz csak azokat a sorokat tartalmazza, amelyek mindkét lekérdezésben megtalálhatók – INTERSECT, vagy az első lekérdezésnek csak azokat a sorait, amelyek hiányoznak a másodikból – KIVÉVE. De az a baj, hogy sok DBMS nem támogatja ezeket a javaslatokat. De van kiút - az EXISTS predikátum használata.

Az EXISTS predikátum kiértékelése IGAZ, ha az allekérdezés legalább néhány sort ad vissza; ellenkező esetben az EXISTS kiértékelése HAMIS. Van egy NOT EXISTS állítmány is, amely ennek az ellenkezőjét teszi.

Az EXISTS jellemzően függő segédlekérdezésekben használatos (például IN).

LÉTEZ (táblázati segédlekérdezés)

Példa: Keressen olyan számítógépgyártókat, amelyek laptopokat is gyártanak


✍ Megoldás:

SELECT DISTINCT Manufacturer FROM product AS pc_product WHERE Típus = "Számítógép" ÉS LÉTEZIK (VÁLASZTÁSA Gyártó FROM termékből WHERE Típus = "Laptop" ÉS Gyártó = pc_termék.Gyártó)

Eredmény:

Keresse meg azokat a számítógépgyártókat, amelyek nem gyártanak nyomtatót

SQL néhány kulcsszó | BÁRMI és MINDEN

A SOME és ANY kulcsszavak szinonimák, így bármelyiket használhatja a lekérdezésben. Egy ilyen lekérdezés eredménye egy értékoszlop lesz.

Szintaxis:

< выражение>< оператор сравнения>NÉHÁNY | BÁRMI (< подзапрос> )

<выражение><оператор сравнения>NÉHÁNY | BÁRMI (<подзапрос>)

Ha egy részlekérdezésből visszaadott bármely X értéknél a " " művelet eredménye IGAZ értéket ad vissza, akkor a BÁRMELY predikátum is IGAZ értéket ad vissza.

Példa: Keressen olyan számítógép-beszállítókat, akiknek a száma nem kapható (azaz nem szerepel a számítógéptáblázatban)


✍ Megoldás:

Táblázat forrásadatok:

Eredmény:

A példában a Number = ANY(SELECT Number FROM pc) predikátum az IGAZ értéket adja vissza, ha a fő lekérdezésből származó szám megtalálható a táblaszámítógép számai listájában (ezt az allekérdezés adja vissza). Ezenkívül a NEM használatos. Az eredménykészlet egy oszlopból fog állni - Gyártó. Annak érdekében, hogy egy gyártó többször ne jelenjen meg, bevezették a DISTINCT szolgáltatásszót.
Most nézzük meg az ALL kulcsszó használatát:

Példa: Keresse meg azon laptopok számát és árait, amelyek többe kerülnek, mint bármely számítógép


✍ Megoldás:

Fontos:Érdemes megjegyezni, hogy általában egy ANY-t tartalmazó lekérdezés egy értékkészletet ad vissza. Ezért a WHERE záradékban az EXISTS , IN , ALL és ANY operátorok nélküli segédlekérdezés használata, amely logikai értéket produkál, lekérdezés futásidejű hibát eredményezhet.


Példa: Keresse meg azoknak a számítógépeknek a számát és árait, amelyek költsége meghaladja a laptopok minimális költségét


✍ Megoldás:


Ez a lekérdezés helyes, mert az Price skaláris kifejezést a rendszer összehasonlítja egy olyan segédlekérdezéssel, amely egyetlen értéket ad vissza

Függvények a karakterláncokkal való munkavégzéshez SQL-ben

A LEFT függvény levágja a karakterlánc bal oldalán lévő második argumentum által megadott karakterek számát:

BAL (<строка>,<число>)

A RIGHT függvény a megadott számú karaktert adja vissza jobbra egy karakterlánc-kifejezésből:

JOBB(<строка>,<число>)

Példa: Nyomtassa ki az összes gyártó nevének első betűit


✍ Megoldás:

SELECT DISTINCT LEFT(`Gyártó` , 1) A `termékből`

Eredmény:

Példa: Nyomtassa ki a gyártó nevét, amely ugyanazzal a betűvel kezdődik és végződik


✍ Megoldás:

SQL csere függvény

Szintaxis:

SELECT `név` , REPLACE(`név` , "a", "aa") FROM "tanárok"

Itt az ideje, hogy beszéljünk az adatok tervezési eszközökkel történő kombinálásáról unióÉs szakszervezet minden, mivel ez néha nagyon hasznos, és néha lehetetlen egy ilyen kialakítás nélkül. Példákat fogunk írni a DBMS-ben MSSQL 2008 SQL nyelv használatával.

És azzal szeretném kezdeni, hogy Ön és én már sok példát megnéztünk a kérések írására SQL, például az SQL nyelv select utasítása, vagy a plpgsql-ben és a transact-sql-ben is programozásnak tekintett SQL karakterlánc-függvények használata, például Hogyan írjunk függvényt PL/pgSQL-ben és Transact-sql-ben - Táblafüggvények ill. ideiglenes táblák, ill.

A fenti cikkeket okkal jeleztem, de azért jeleztem, mert a mai lecke jobb megértéséhez és elsajátításához alapismeretekre van szükség (ez a kezdő programozók oldala), amelyeket a fent említett anyagokból szerezhet be.

És hát kezdjük is. És először nézzük meg, mik ezek a szakszervezetek és a szakszervezetek minden operátora.

Mi az UNION és UNION ALL az SQL-ben?

  • UNIÓ egy SQL utasítás több lekérdezés eredményhalmazának kombinálására, és ez az operátor csak egyedi sorokat ad ki a lekérdezésekben, pl. például kombinálsz két lekérdezést, és mindegyik ugyanazt az adatot tartalmazza, más szóval teljesen azonos, és az unió operátor egy sorba egyesíti őket, hogy ne legyenek ismétlődések;
  • UNION ALL egy SQL operátor több lekérdezés eredményül kapott adatkészletének kombinálására, de ez az operátor abszolút az összes sort, még a duplikációkat is kiadja.

Előfeltételek a szakszervezet és a szakszervezet minden szereplő

  1. A mezőkészletnek olyannak kell lennie azonos minden kérésben, i.e. az egyes kérelmek mezőinek számának, amelyeket az unióval vagy az unió összes konstrukciójával kombinálunk, azonosnak kell lennie;
  2. Adattípusok mezőknek is meg kell egyeznie minden kérésben, pl. ha például egy olyan lekérdezést szeretne írni, amelyben az adattípus int, a második lekérdezésben pedig az adattípus a varchar, akkor a lekérdezés nem hajtódik végre, és a lekérdezési ablakban hibaüzenet jelenik meg;
  3. Válogatás esetén az operátor Rendezés csak megadhatja az utolsó kérés után.

Most beszéljünk arról, hogy mikor kell használnunk ezeket az operátorokat. Nos, például több hasonló felépítésű adatbázisa van, amelyek mindegyikét például egy fiókhoz hozták létre, és ezeket az adatokat kombinálnia kell, hogy minden fiókról jelentést biztosítson a menedzsment számára, és ennek legegyszerűbb módja. Lekérdezések írása SQL-ben, amelyek mindegyike különböző adatbázisokhoz fog hozzáférni, és az unió vagy az union all konstrukciót használja ezek kombinálásához. Ezenkívül néha szükséges az adatokat egy adatbázisban úgy egyesíteni, hogy ezt a szokásos szakszervezetekkel ne lehessen elérni, és szakszervezetet kell használnia. Azért mondom azt, hogy „kell”, mert ez a konstrukció jelentősen megnöveli a lekérdezés végrehajtási idejét, ha például sok adat van, és nem kell visszaélni vele.

Elég az elméletből, térjünk át a gyakorlatra.

Jegyzet! Mint már említettük, a Management Studio for SQL Server 2008-ban fogunk lekérdezéseket írni

Példák union és union all használatára

Először hozzunk létre két egyszerű táblát teszt_tábla és teszt_tábla_2

TÁBLÁZAT LÉTREHOZÁSA ( IDENTITY(1,1) NOT NULL, (18, 0) NULL, (50) NULL, KOSZTRÁCIÓS ELSŐDLEGES KULCS CLUSTERED ( ASC) WITH-vel (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEYLOWSALLOWSONOFF, IGNORE_DUP_KEYLOWSALLOWS_ALL. = ON) ON ) ON GO SET ANSI_PADDING OFF GO --és a második táblázat CREATE TABLE ( IDENTITY(1,1) NOT NULL, (18, 0) NULL, (50) NULL, CONSTRAINT ELSŐDLEGES KULCS CLUSTERED ( ASC)A( PAD_INDEX = KI, STATISTICS_NORECOMPUTE = KI, IGNORE_DUP_KEY = KI, ALLOW_ROW_LOCKS = BE, ALLOW_PAGE_LOCKS = BE) BE ) BE ) BE AZ ANSI_PADDING KI GO BEÁLLÍTÁSA

Például ugyanazok, csak más a neve. A következő adatokkal töltöttem ki őket:

Most írjunk egy lekérdezést, amely egyesíti az eredményül kapott adatokat, például egy unión keresztül. A szintaxis nagyon egyszerű:

1. szakszervezeti kérelem 2. szakszervezeti kérelem 3. kérés stb.

Íme a kérés:

Szám kiválasztása, szöveg a teszt_tábla unióból válasszon számot, szöveg a teszt_táblázatból_2

Mint látható, csak 5 sor jelent meg, mivel az első kérés első sora és a második kérés első sora megegyezik, így összevonták őket.

Most egyesüljünk az egyesülésen keresztül

Íme a kérés:

Szám kiválasztása, szöveg a teszt_tábla unióból, minden szám kiválasztása, szöveg a teszt_táblázatból_2

Itt már minden sor megjelent, mióta megadtuk az összes uniót.

Most nézzük meg, milyen hibák fordulhatnak elő még ebben az egyszerű kérésben is. Például összekevertük a mezők sorrendjét:

Vagy az első kérésben megadtunk egy további mezőt, de a másodiknál ​​nem tettük meg.

Például, ha rendelést használ:

Itt minden kérésnél megadtuk a rendezést, de ez csak az utolsónál volt szükséges, pl.

Szám kiválasztása, szöveg a teszt_tábla unióból minden kiválasztási szám, szöveg a teszt_tábla_2-ből szám szerinti sorrendben

És végül szerettem volna elmondani egy trükköt, ami akkor használható, ha például egy kérésben még mindig meg kell jelenítenie valamilyen mezőt, de más esetekben nincs meg, vagy egyszerűen nincs rá szükség, ehhez írhat a következő kérés:

Válassza ki az azonosítót ,számot, szöveget a teszt_tábla unióból mind válassza ki a "", számot, szöveget a teszt_táblázatból_2

azok. Amint látja, egyszerűen hagyja üresen a mezőt ott, ahol lennie kell, és a kérés tökéletesen működik, például:

Valószínűleg mindent el akartam mondani a tervezésről union és union all of SQL nyelv Azt mondtam, ha kérdései vannak ezen operátorok használatával kapcsolatban, tegye fel őket a megjegyzésekben. Sok szerencsét!

Ebben az oktatóanyagban megtudhatja, hogyan kell használni MySQL UNION operátor szintaxissal és példákkal.

Leírás

MySQL UNION operátor 2 vagy több SELECT záradékból származó eredményhalmazok kombinálására szolgál. Eltávolítja a duplikált sorokat a különböző SELECT záradékok között.

Az UNION operátorban minden SELECT záradéknak ugyanannyi mezőt kell tartalmaznia az eredményhalmazokban azonos adattípusokkal.

Szintaxis

Az UNION operátor szintaxisa a MySQL-ben:

Paraméterek vagy érvek

kifejezés1 , kifejezés2 , ... kifejezés_n a visszaadni kívánt oszlopok vagy számítások.
táblák - táblák, amelyekből rekordokat szeretne kapni. Legalább egy táblázatnak szerepelnie kell a FROM záradékban.
WHERE feltételek – nem kötelező. Feltételek, amelyeknek teljesülniük kell a kiválasztott rekordokhoz.
DISTINCT - opcionális. Eltávolítja a duplikációkat az eredménykészletből, de a DISTINCT módosító használata nem befolyásolja az UNION operátor eredménykészletét, mivel az UNION operátor alapértelmezés szerint eltávolítja a duplikációkat.

jegyzet

  • Mindkét SELECT tagmondatnak ugyanannyi kifejezést kell tartalmaznia.
  • Mivel az UNION operátor alapértelmezés szerint eltávolítja az összes ismétlődő sort az eredménykészletből, feltéve, hogy az UNION DISTINCT módosító nincs hatással az eredményekre.
  • Az UNION utasítás első SELECT záradékából származó oszlopnevek az eredményhalmaz oszlopneveiként használatosak.

Példa egy mező visszaadására

Az alábbiakban egy példa látható egy MySQL UNION operátorra, amely több SELECT záradékból egy mezőt ad vissza (és mindkét mezőnek ugyanaz az adattípusa):

MySQL

SELECT beszállítói_azonosító FROM beszállítók UNION SELECT beszállítói_azonosító FROM rendelés_részletei;

KIVÁLASZTJA a szállítóazonosítót

beszállítóktól

UNIÓ

KIVÁLASZTJA a szállítóazonosítót

FROM order_details;

Ebben a MySQL UNION operátorpéldában, ha a beszállítói_azonosító a beszállítók és az order_details táblában is szerepel, akkor egyszer megjelenik az eredménykészletben. A MySQL UNION operátor eltávolítja a duplikációkat. Ha nem szeretné eltávolítani az ismétlődéseket, próbálja meg a MySQL UNION ALL operátort használni.

Példa – Az ORDER BY használata

A MySQL UNION operátor egy ORDER BY záradékot használhat a lekérdezés eredményének meghatározásához.