SQL KÜLÖNBÖZŐ záradékot használunk az ismétlődő oszlopok eltávolítására az eredménykészletből.
A különálló kulcsszó a kiválasztott kulcsszóval együtt használatos. Ez akkor hasznos, ha elkerüljük a megadott értékekben jelen lévő ismétlődő értékeket oszlopok/táblázatok . A egyedi értékek lekérésre kerülnek, amikor a különálló kulcsszót használjuk.
- A SELECT DISTINCT csak különálló ( különböző ) értékeket.
- A DISTINCT kiküszöböli az ismétlődő rekordokat a táblából.
- A DISTINCT aggregátumokkal használható: COUNT, AVG, MAX stb.
- A DISTINCT egyetlen oszlopon működik.
- Több oszlop nem támogatott a DISTINCT esetén.
Szintaxis:
SELECT DISTINCT expressions FROM tables [WHERE conditions];
Paraméterek:
Kifejezések: A lekérni kívánt oszlopokat vagy számításokat kifejezésnek nevezzük.
Táblázatok: A táblák, amelyekről le akarjuk kérni a rekordokat. A FROM záradékban csak egy táblázat található.
WHERE feltételek: A feltételek a kiválasztott rekordok esetében megfelelhetnek, és ez nem kötelező.
Jegyzet:
- Ha egy kifejezés szerepel a KÜLÖNBÖZŐ záradékot, akkor a lekérdezés a kifejezések egyedi értékeit adja vissza.
- A lekérdezés lekéri a felsorolt kifejezések egyedi kombinációit, ha egynél több kifejezés van megadva KÜLÖNBÖZŐ záradék itt.
- Az SQL-ben a KÜLÖNBÖZŐ záradék nem hagyhatja figyelmen kívül a NULL értékeket. Tehát amikor az SQL utasításban a DISTINCT záradékot használjuk, az eredménykészletünkben a NULL különálló érték lesz.
Példa:
Tekintsük a következő ALKALMAZOTTAK asztal.
konvertálása dupla java-ba
Először is nézzük meg, hogy a következő SELECT lekérdezés az ismétlődő fizetési rekordokat adja vissza.
SQL> SELECT SALARY FROM EMPLOYEES ORDER BY SALARY;
Amikor végrehajtjuk a fenti SQL-lekérdezést, az összes rekordot lekéri, beleértve a duplikált rekordokat is. A fenti táblázatban Newton és Johnson fizetése 20 000.
Most pedig használjuk a KÜLÖNBÖZŐ kulcsszót a fenti SELECT lekérdezéssel.
mysql felhasználói lista
SQL> SELECT DISTINCT SALARY FROM EMPLOYEES ORDER BY SALARY;
A fenti SQL-lekérdezés eltávolítja az ismétlődő rekordokat, és a következő eredményt jeleníti meg.
Példa: Egyedi értékek keresése az oszlopban
Tekintse meg a DISTINCT záradékot, hogy megtalálja az egyedi értékeket a táblázat egy oszlopában.
Van egy asztalunk szállítók a következő adatokkal:
A fenti táblázatból megkeressük az egyedi állapotokat.
SELECT DISTINCT state FROM suppliers ORDER BY state;
Ezek hat a rekordokat.
A példa az egyedit adja vissza állapot tól től beszállítói táblázat és eltávolítja az eredményhalmaz ismétlődő rekordjait.
Példa: Egyedi értékek keresése több oszlopban
A SQL DISTINCT A záradékot a SELECT utasítás számos mezőjéből távolítja el a duplikált rekordok.
Írd be a SQL utasítás :
SELECT DISTINCT city, state FROM suppliers ORDER BY city, state;
Kimenet:
Ez 8 rekord:
A példa mindegyik egyedit ad vissza város és állam kombináció. Látjuk a Redwood City és Kalifornia , megjelenik az eredménykészletben.
Példa: DISTINCT záradék NULL értékeket kezel
A DISTINCT záradék úgy véli NULLA az egyedi értékre SQL . Van egy asztalunk Termékek amely az alábbi adatokat tartalmazza.
válasszon többtáblás sql-t
Válassza ki az egyedi értékeket a gyümölcs_id mezőből, amely a null értéket tartalmazza. Írja be az alábbiakat SQL szintaxis:
SELECT DISTINCT fruit_id FROM fruits ORDER BY category_id;
Négy rekord van kiválasztva. Ezek az eredmények, amelyeket alább látunk:
A fenti példában a lekérdezés azokat az egyedi értékeket adja vissza, amelyek a kategória_azonosítója oszlop. Az eredményhalmaz első sorában látjuk, NULLA egy kivételes érték, amelyet a KÜLÖNBÖZŐ kikötés.