SQL ir standarta valoda darbam ar relāciju datu bāzēm. Viņam ir savs arsenāls ar daudziem spēcīgiem rīkiem manipulēt ar datiem, kas glabājas tabulu veidā.

ņemot sql aprakstu

Neapšaubāmi, spēja grupēt datus arto paraugu ņemšana ar noteiktu funkciju ir viens no šādiem instrumentiem. Paziņojums SQL HAVING kopā ar WHERE klauzulu ļauj definēt paraugu ņemšanas nosacījumus datiem, kas jau ir grupēti kādā veidā.

SQL parametra apraksts: apraksts

Pirmkārt, jāatzīmē, ka šis parametrsnav obligāts un tiek izmantots vienīgi kopā ar parametru GROUP BY. Kā jūs atceraties, GROUP BY tiek izmantots, ja SELECT izmanto apkopojošās funkcijas, un to aprēķinu rezultātus ir jāsaņem noteiktas grupas. Ja KURS ļauj iestatīt izraudzīšanas nosacījumus, pirms tiek sagrupēti dati, HAVING satur nosacījumus attiecībā uz datiem, kas jau ir grupās. Lai iegūtu labāku izpratni, aplūkosim piemēru ar diagrammu, kas parādīta attēlā.

sql ir

Tas ir lielisks piemērs, dodot HAVING SQL aprakstu. Tabulā ir norādīts produktu nosaukumu saraksts, uzņēmumi, kas tos ražo, un daži citi lauki. Vaicājumā augšējā labajā stūrī mēģinām iegūt informāciju par to, cik daudz produktu nosaukumu katrs uzņēmums ražo, bet mēs vēlamies iegūt tikai tos uzņēmumus, kas ražo vairāk nekā 2 preces. Parametrs GROUP BY izveidoja trīs grupas, kas atbilst uzņēmumu nosaukumiem, katram no kuriem tika aprēķināts produktu skaits (rindas). Bet parametrs, kas pēc tā stāvokļa no iegūtās izlases nošķir vienu grupu, jo tas neatbilst nosacījumiem. Tā rezultātā mēs iegūstam divas grupas, kas atbilst uzņēmumiem, kuru produkcijas daudzums ir 5 un 3.

Var rasties jautājums par to, kāpēc lietotPATĒRĒT, ja SQL ir WHERE. Ja mēs izmantotu KUR, tas izskatīs tabulā esošo rindu kopskaitu, nevis grupās, un šajā gadījumā nosacījums nebūtu jēgas. Tomēr diezgan bieži tie vienlaikus eksistē vienā pieprasījumā.

SQL ar piemēru sintaksi

Šajā piemērā mēs varam redzēt, kā vispirmsir parametru WHERE izlases dati par darbinieku vārdiem, un pēc tam grupēts rezultāts GROUP BY izsniedz papildu pārbaudi par algas lielumu katram darbiniekam.

SQL HAVING parametrs: piemēri, sintakse

Apskatīsim dažas sintakses funkcijasIZMANTO SQL. Šī parametra apraksts ir pavisam vienkāršs. Pirmkārt, kā jau minēts, tas tiek izmantots vienīgi kopā ar parametru GROUP BY un tiek noteikts uzreiz pēc tā un pirms ORDER BY, ja vaicājumā ir viens. Tas ir saprotams, jo PATĒRĒJĀS definē nosacījumus jau grupētiem datiem. Otrkārt, šī parametra stāvoklī jūs varat izmantot tikai kopējo funkcijas un laukus, kas norādīti parametrā GROUP BY. Visi šī parametra nosacījumi ir precīzi norādīti tādā pašā veidā kā WHERE gadījumā.

Secinājums

Kā redzat, šajā operatorā nekas nav sarežģītsnē Semantiski to lieto tāpat kā KUR. Ir svarīgi saprast, ka KUR tiek izmantota attiecībā pret visiem izvēlētajiem datiem, un HAVING ir tikai attiecībā pret grupām, kas definētas GROUP BY parametrā. Mēs iepazīstinājām ar visaptverošu aprakstu HAVING SQL, kas ir pietiekams, lai pārliecināti strādātu ar to.