SQL DISTINTS La clàusula s'utilitza per eliminar les columnes duplicades del conjunt de resultats.
La paraula clau diferent s'utilitza juntament amb la paraula clau select. És útil quan evitem els valors duplicats presents a l'específic columnes/taules . El valors únics s'obtenen quan utilitzem la paraula clau diferent.
- SELECT DISTINCT només retorna diferents ( diferents ) valors.
- DISTINCT elimina els registres duplicats de la taula.
- DISTINCT es pot utilitzar amb agregats: COUNT, MITJANA, MAX , etc.
- DISTINCT funciona en una sola columna.
- No s'admeten diverses columnes per a DISTINCT.
Sintaxi:
SELECT DISTINCT expressions FROM tables [WHERE conditions];
Paràmetres:
Expressions: Les columnes o càlculs que volem recuperar s'anomenen expressió.
Taules: Les taules que volem recuperar els registres. Només hi ha una taula a la clàusula FROM.
ON condicions: Les condicions es poden reunir per als registres seleccionats i és opcional.
Nota:
- Quan es proporciona una expressió al DISTINTS clàusula aleshores la consulta retornarà els valors únics de les expressions.
- La consulta recuperarà les combinacions úniques per a les expressions enumerades si es proporciona més d'una expressió a la DISTINTS clàusula aquí.
- En SQL, el DISTINTS La clàusula no pot ignorar els valors NULL. Així, quan utilitzem la clàusula DISTINCT a la instrucció SQL, el nostre conjunt de resultats inclourà NULL com a valor diferent.
Exemple:
Considereu el següent EMPLEATS taula.
Primer, vegem que la consulta SELECT següent retorna els registres salarials duplicats.
SQL> SELECT SALARY FROM EMPLOYEES ORDER BY SALARY;
Quan executem la consulta SQL anterior, obté tots els registres, inclosos els registres duplicats. A la taula anterior, el sou de Newton i Johnson és el mateix 20.000.
Ara, fem servir el DISTINTS paraula clau amb la consulta SELECT anterior.
SQL> SELECT DISTINCT SALARY FROM EMPLOYEES ORDER BY SALARY;
La consulta SQL anterior elimina els registres duplicats i mostra el resultat següent.
declaració de cas verilog
Exemple: cercar valors únics a la columna
Mireu la clàusula DISTINCT per trobar els valors únics dins d'una columna de la taula.
Tenim una taula anomenada proveïdors amb les dades següents:
A la taula anterior, trobarem els estats únics.
SELECT DISTINCT state FROM suppliers ORDER BY state;
Aquests són sis els registres.
L'exemple retorna l'únic estat des de taula de proveïdors i elimina els registres duplicats del conjunt de resultats.
Exemple: cercar valors únics en diverses columnes
El SQL DISTINCT La clàusula s'utilitza per eliminar els registres duplicats de molts camps de la instrucció SELECT.
Introduïu el Declaració SQL :
SELECT DISTINCT city, state FROM suppliers ORDER BY city, state;
Sortida:
Aquests són 8 registres:
L'exemple retorna cada un únic ciutat i estat combinació. Veiem el Redwood City i Califòrnia , apareix al conjunt de resultats.
Exemple: la clàusula DISTINCT gestiona els valors NULL
La clàusula DISTINCT considera NUL al valor únic en SQL . Tenim una taula anomenada productes que conté les dades següents.
factorial al c
Seleccioneu els valors únics del camp fruit_id que conté el valor nul. Introduïu el següent SQL sintaxi:
SELECT DISTINCT fruit_id FROM fruits ORDER BY category_id;
Hi ha quatre registres seleccionats. Aquests són els resultats que veiem a continuació:
A l'exemple anterior, la consulta retorna els valors únics que hi ha al fitxer categoria_id columna. Veiem a la primera fila del conjunt de resultats, NUL és un valor excepcional que retorna el DISTINTS clàusula.