Vitajte na [www.pocitac.win] Pripojiť k domovskej stránke Obľúbené stránky

Domáce Hardware Siete Programovanie Softvér Otázka Systémy

Aký je rozdiel medzi tým a klauzuly o SQL?

Klauzuly „kde“ a „majú“ klauzuly v SQL slúžia rôznym účelom, hoci oba filtrujú riadky na základe podmienok. Tu je porucha:

kde klauzula

* Účel: Filtre riadky pred Akékoľvek agregačné operácie (napríklad `sum`,` avg`, `count` atď.).

* sa vzťahuje na: Jednotlivé riadky.

* Podmienky: Zvyčajne zahŕňajú porovnania a logických operátorov, ktoré pracujú na jednotlivých stĺpcoch v tabuľke.

* Príklad:

`` sql

Vyberte * od zákazníkov, kde country ='USA';

`` `

Tento dotaz načíta všetkých zákazníkov zo tabuľky „zákazníkov“, kde sa stĺpec „krajina“ rovná „USA“.

s klauzuli

* Účel: Filtre riadky po agregácia operácií.

* sa vzťahuje na: Výsledky agregácie (skupina By).

* Podmienky: Typicky zahŕňajú porovnania agregovaných hodnôt pomocou agregovaných funkcií (napr. `Sum (cena)`, `avg (vek)`, `count (*)`) v kombinácii s logickými operátormi.

* Príklad:

`` sql

Vyberte City, AVG (vek) ako priemer_age

Od zákazníkov

Skupina od mesta

Mať priemer_age> 30;

`` `

Tento dotaz zoskupuje zákazníkov podľa „mesta“ a vypočítava priemerný vek pre každé mesto. Potom filtruje výsledky, aby ukázali iba mestá, v ktorých je priemerný vek vyšší ako 30.

Kľúčové rozdiely v skratke:

* načasovanie: „Kde“ Filtre pred agregáciou, „majú“ filtre po.

* rozsah: `Kde„ pracuje na jednotlivých riadkoch, „mať“ pracuje na agregovaných výsledkoch.

* Podmienky: `Kde„ používa podmienky na jednotlivých stĺpcoch, „mať“ podmienky na agregované hodnoty.

Kedy použiť každú klauzulu:

* Použite „kde“, keď chcete filtrovať údaje na základe jednotlivých hodnôt riadkov pred agregáciou.

* Použite „mať“, keď chcete filtrovať agregované výsledky (napríklad zoskupené údaje) na základe podmienok zahŕňajúcich agregované hodnoty.

Poznámka: Môžete použiť „kde“ aj `klauzuly s` klauzuly v rovnakom dotaze, ale „kde“ sa použije najskôr na filtrovanie riadkov používaných na agregáciu a potom sa „má“ používa na filtrovanie agregovaných výsledkov.

Najnovšie články

Copyright © počítačové znalosti Všetky práva vyhradené