Diferència entre la clàusula on i tenir en SQL

Taula de continguts:

Diferència entre la clàusula on i tenir en SQL
Diferència entre la clàusula on i tenir en SQL

Vídeo: Diferència entre la clàusula on i tenir en SQL

Vídeo: Diferència entre la clàusula on i tenir en SQL
Vídeo: Предложение HAVING в SQL 2024, De novembre
Anonim

Diferència clau: on vs tenir clàusula en SQL

Les dades són importants per a totes les organitzacions. Per tant, és necessari emmagatzemar les dades de manera organitzada per recuperar-les. Les dades s'emmagatzemen en taules. Una base de dades consisteix en una col·lecció de taules. Un tipus de base de dades comú són les bases de dades relacionals. En una base de dades relacional, les taules estan relacionades entre si. Per exemple, el client de la taula està connectat a la taula de comandes. Un sistema de gestió de bases de dades relacionals (RDBMS) és un sistema de gestió de bases de dades que es basa en un model relacional. S'utilitza per gestionar bases de dades relacionals. Alguns exemples de RDBMS són MySQL, MSSQL i Oracle. El llenguatge de consulta estructurat (SQL) és el llenguatge utilitzat per manipular i recuperar dades en una base de dades relacional. Hi ha diverses clàusules en SQL per realitzar tasques diferents. Dos d'ells són on i havent. En aquest article es parla de la diferència entre la clàusula where i have a SQL. La diferència clau entre la clàusula where i have a SQL és que la clàusula where s'utilitza per filtrar registres abans que es produeixi una agrupació o una agregació, mentre que la clàusula havent s'utilitza per filtrar registres després d'una agrupació o que es produeixi una agregació.

Quina és la clàusula where a SQL?

Ajuda a recuperar, actualitzar o suprimir un conjunt concret de dades de la taula segons la condició donada. El programador pot utilitzar la clàusula where per restringir i obtenir només les dades requerides. La consulta només s'executa als registres on la condició especificada per la clàusula where és certa. Es pot utilitzar amb seleccionar, actualitzar i suprimir.

Consulteu la taula d'estudiants a continuació,

Diferència entre la clàusula on i havent a SQL_Figura 02
Diferència entre la clàusula on i havent a SQL_Figura 02
Diferència entre la clàusula on i havent a SQL_Figura 02
Diferència entre la clàusula on i havent a SQL_Figura 02

Per seleccionar el nom i l'edat de l'estudiant el student_id del qual és igual a 3, es pot utilitzar la següent consulta SQL.

selecciona el nom, l'edat de l'estudiant on student_id=3;

També és possible utilitzar operadors com no igual a (!=), major que (>), menor que (=), menor o igual a (<=). Per seleccionar l'estudiant_id i el nom l'edat del qual no és igual a 15 anys, es pot utilitzar la següent consulta SQL.

select student_id, el nom de l'estudiant on l'edat!=15;

Per canviar l'edat de l'estudiant de 2 a 13 anys, es pot utilitzar la consulta següent.

actualitzar l'edat establerta per l'estudiant=13 anys on id=3;

Per suprimir el registre del qual el student_id és 4, es pot utilitzar la consulta següent.

suprimir de l'estudiant on student_id=4;

Els operadors i, o es poden utilitzar per combinar diverses condicions.

seleccioneu el nom de l'alumne on student_id=1 i l'edat=15; la consulta recuperarà el nom Ann.

Aquests són alguns exemples de la clàusula where en SQL. Si hi ha una clàusula Group By, la clàusula where apareix abans d'aquesta.

Què és tenir una clàusula a SQL?

Hi ha funcions que ofereix el llenguatge SQL per realitzar càlculs fàcilment. Es coneixen com a funcions d'agregació. El min () s'utilitza per trobar el valor més petit de la columna seleccionada. El màxim () s'utilitza per trobar el valor màxim de la columna seleccionada. La mitjana () s'utilitza per trobar la mitjana a la columna i la suma () s'utilitza per trobar el total de la columna. Aquests són alguns exemples de funcions d'agregació. Consulteu la taula de comandes a continuació,

Diferència entre la clàusula on i havent a SQL_Figura 03
Diferència entre la clàusula on i havent a SQL_Figura 03
Diferència entre la clàusula on i havent a SQL_Figura 03
Diferència entre la clàusula on i havent a SQL_Figura 03

El programador pot escriure la consulta SQL de la següent manera per recuperar els clients el saldo dels quals és superior a 2000.

seleccioneudel grup de comandes per client amb la suma (saldo) > 2000.

Això imprimirà els registres dels clients la suma del saldo dels quals sigui superior a 2000. Imprimirà els registres dels clients Ann i Alex.

La clàusula have s'utilitza per recuperar els valors dels grups que compleixen determinades condicions. Per tant, el grup que cau en la condició donada apareixerà com a resultat d'aquesta. La clàusula have apareix després de la clàusula grup per. Si la clàusula group-by no està present, la clàusula have funcionarà de manera similar a la clàusula where.

Quines són les similituds entre la clàusula on i tenir en SQL?

  • Tots dos són clàusules en llenguatge de consulta estructurat.
  • Tots dos es poden utilitzar per filtrar la recuperació d'un conjunt de dades.

Quina diferència hi ha entre on i tenir una clàusula en SQL?

on vs tenir una clàusula en SQL

L'on és una clàusula SQL que s'utilitza per especificar una condició mentre s'obtenen les dades d'una única taula o en unir-se amb diverses taules. El havent és una clàusula SQL que especifica que una instrucció de selecció SQL només hauria de retornar files on els valors agregats compleixin les condicions especificades.
Finalitat
La clàusula where s'utilitza per filtrar files. La clàusula have s'utilitza per filtrar grups.
Agregació
La clàusula where no es pot utilitzar amb funcions d'agregació tret que estigui en una subconsulta continguda en una clàusula Havent. Les funcions d'agregació es poden utilitzar amb la clàusula have.
Mètode de filtrat
La clàusula where es comporta com un prefiltre. La clàusula have es comporta com un filtre de publicació.
Ordre d'agrupament per clàusula
La clàusula where s'utilitza abans de la clàusula Group By. La clàusula have s'utilitza després de la clàusula Group By.
S'utilitza amb
La clàusula where es pot utilitzar amb seleccionar, actualitzar i suprimir. La clàusula have només s'utilitza amb select.

Resum: on vs tenir clàusula en SQL

El llenguatge de consulta estructurat (SQL) és el llenguatge utilitzat a les bases de dades relacionals. L'on estan tenint dues clàusules en SQL. En aquest article es parla de la diferència entre la clàusula on i havent. La diferència entre la clàusula where i have a SQL és que s'utilitza per filtrar registres abans que es produeixi una agrupació o una agregació mentre que havent s'utilitza per filtrar registres després d'una agrupació o que es produeixi una agregació.

Recomanat: