Odporúčaná, 2024

Redakcia Choice

Rozdiel medzi skupinou a poradím v SQL

SQL umožňuje usporiadať údaje získané dotazom. Máme dve klauzuly na usporiadanie údajov získaných z dotazu, ktoré sú klauzulou Skupina a Kópia. Bod, ktorý rozlišuje klauzulu Skupina a Podmienka, je to, že klauzula Skupiny sa používa, keď chceme použiť agregovanú funkciu na viac ako jednu sadu nuliek a klauzula Poradie sa používa, keď chceme usporiadať údaje získané dotazom. Prediskutujeme niektoré rozdiely medzi doložkou o skupine a doložkou o príkaze pomocou nižšie uvedeného porovnávacieho grafu.

Porovnávacia tabuľka

Základ pre porovnanieSkupina ByZoradiť podľa
základnéSkupinová skupina sa používa na vytvorenie skupiny množiny n-tiek.Usporiadanie sa používa na usporiadanie získaných údajov v dôsledku dotazu v zoradenom formulári.
atribútAtribút v rámci funkcie Aggregate nemôže byť v klauzule Group By.Súčet atribútu môže byť v doložke Objednávka podľa.
prízemnýVypracované z dôvodu podobnosti medzi hodnotami atribútov.Vyhotovené na základe vzostupného poradia a zostupného poradia.

Definícia skupiny podľa ustanovenia

Agregované funkcie ako priemer, min, max, suma, počet sa uplatňujú na jednu sadu n-tiek. V prípade, že chcete použiť súhrnné funkcie na skupinu množín n-tiek, máme k tomu klauzulu Group by. Skupina podľa klauzuly zoskupuje n-tity, ktoré majú rovnakú hodnotu atribútu.

Existuje jedna vec, ktorá sa má pamätať na klauzulu Group By, uistite sa, že atribút v klauzule Group By sa musí objaviť v klauzule SELECT, ale nie pod agregačnou funkciou . Ak klauzula Group By obsahuje atribút, ktorý nie je v klauzule SELECT alebo ak je pod klauzulou SELECT, ale pod agregačnou funkciou, potom sa dotaz stane chybným. Preto môžeme povedať, že klauzula Group By sa vždy používa v spolupráci s klauzulou SELECT.

Urobme príklad na pochopenie doložky skupiny.

SELECT oddelenie _ID, avg (plat) ako avg_salary z učiteľskej skupiny podľa oddelenia_ID.

Môžete vidieť, že spočiatku vzniká prechodný výsledok, ktorý zoskupil oddelenia.

Ďalej sa agregovaná funkcia avg aplikuje na každú skupinu oddelení a výsledok je uvedený nižšie.

Vymedzenie pojmu podľa ustanovenia

Kľúč podľa poradia sa používa na zobrazenie údajov získaných dotazom v triedenom poradí. Podobne ako v klauzule Group By sa v spolupráci s klauzulou SELECT používa doložka Order By. Ak nezmieňujete poradie triedenia, klauzula podľa druhu zoraďuje údaje vo vzostupnom poradí. Môžete určiť vzostupný poradie ako vzostupne a zostupne, ako zostup.

Chápeme, ako funguje klauzula o príkaze pomocou nasledujúceho príkladu. Máme učiteľský stôl a aplikujem triedenie do dvoch stĺpcov Department_Id a Plat, z tabuľky Učiteľ.

Zvoľte ID oddelenia, plat od učiteľa podľa oddelenia_zvýšenie, mzda zostup.

Môžete si to všimnúť, že najprv zariaďuje oddelenie _ID vo vzostupnom poradí a potom zaraďuje platy na rovnakom oddelení v zostupnom poradí.

Kľúčové rozdiely medzi skupinou a objednávkou

  1. Klauzula skupiny podľa skupiny zoskupuje množinu n-tiek vo vzťahu, ktorý je pod klauzulou SELECT. Na druhej strane, klauzula Poradie zoradiť výsledok dopytu vo vzostupnom alebo zostupnom poradí.
  2. Atribút agregačnej funkcie nemôže byť v klauzule Group By, zatiaľ čo atribút pod agregačnou funkciou môže byť pod klauzulou Order by.
  3. Zoskupenie n-tíc sa robí na základe podobnosti medzi hodnotami atribútov n-túl. Na druhej strane sa objednávanie alebo triedenie uskutočňuje na základe vzostupného poradia alebo zostupného poradia.

záver:

Ak chcete vytvoriť skupinu množiny n-tíc, musíte použiť klauzulu Group By. V prípade, že chcete usporiadať údaje z jedného stĺpca alebo viac ako jedného stĺpca v súbore n-tíc vo vzostupnom alebo zostupnom poradí, musí sa použiť klauzula o objednávke.

Top