SQL DISTINKT klausul brukes til å fjerne duplikatkolonnene fra resultatsettet.
streng reversering i c
Det distinkte nøkkelordet brukes sammen med velg nøkkelord. Det er nyttig når vi unngår dupliserte verdier i den spesifikke kolonner/tabeller . De unike verdier hentes når vi bruker det distinkte søkeordet.
- SELECT DISTINCT returnerer bare distinkt ( annerledes ) verdier.
- DISTINCT eliminerer dupliserte poster fra tabellen.
- DISTINCT kan brukes med aggregater: ANTALL, AVG, MAKS , etc.
- DISTINCT opererer på en enkelt kolonne.
- Flere kolonner støttes ikke for DISTINCT.
Syntaks:
SELECT DISTINCT expressions FROM tables [WHERE conditions];
Parametere:
Uttrykkene: Kolonnene eller beregningene som vi ønsker å hente kalles uttrykk.
Tabeller: Tabellene som vi ønsker skal hente postene. Det er bare én tabell i FROM-klausulen.
WHERE forhold: Vilkårene kan oppfylles for postene som er valgt, og det er valgfritt.
Merk:
- Når ett uttrykk er gitt i DISTINKT klausul, vil spørringen returnere de unike verdiene til uttrykkene.
- Spørringen vil hente de unike kombinasjonene for de oppførte uttrykkene hvis mer enn ett uttrykk er gitt i DISTINKT klausul her.
- I SQL er DISTINKT klausulen kan ikke ignorere NULL-verdiene. Så når vi bruker DISTINCT-leddet i SQL-setningen, vil resultatsettet vårt inkludere NULL som en distinkt verdi.
Eksempel:
Vurder følgende ANSATTE bord.
La oss først se at følgende SELECT-spørring returnerer de dupliserte lønnspostene.
SQL> SELECT SALARY FROM EMPLOYEES ORDER BY SALARY;
Når vi utfører SQL-spørringen ovenfor, henter den alle postene inkludert de dupliserte postene. I tabellen ovenfor er lønnen til Newton og Johnson samme 20000.
La oss nå bruke DISTINKT søkeord med SELECT-søket ovenfor.
SQL> SELECT DISTINCT SALARY FROM EMPLOYEES ORDER BY SALARY;
SQL-spørringen ovenfor fjerner de dupliserte postene og viser følgende resultat.
Eksempel: Finne unike verdier i kolonnen
Se på DISTINCT-leddet for å finne de unike verdiene i én kolonne i tabellen.
Vi har et bord som heter leverandører med følgende data:
Fra tabellen ovenfor skal vi finne de unike tilstandene.
SELECT DISTINCT state FROM suppliers ORDER BY state;
Disse er seks de poster.
Eksemplet returnerer det unike stat fra leverandører tabell og fjerner de dupliserte postene fra resultatsettet.
Eksempel: Finne unike verdier i flere kolonner
De SQL DISTINKT klausul brukes til å fjerne de dupliserte postene fra mange felt i SELECT-setningen.
Skriv inn SQL-setning :
SELECT DISTINCT city, state FROM suppliers ORDER BY city, state;
Produksjon:
Dette er 8 poster:
Eksemplet returnerer hver unike by og stat kombinasjon. Vi ser Redwood City og California , vises i resultatsettet.
Eksempel: DISTINCT-klausul håndterer NULL-verdier
DISTINCT-klausulen vurderer NULL til den unike verdien i SQL . Vi har et bord som heter Produkter som inneholder dataene nedenfor.
Velg de unike verdiene fra feltet fruit_id som inneholder nullverdien. Skriv inn nedenfor SQL syntaks:
SELECT DISTINCT fruit_id FROM fruits ORDER BY category_id;
Det er valgt fire poster. Dette er resultatene vi ser nedenfor:
I eksemplet ovenfor returnerer spørringen de unike verdiene som er i kategori_id kolonne. Vi ser ved den første raden i resultatsettet, NULL er en eksepsjonell verdi som returneres av DISTINKT klausul.