Ero ryhmän mukaan ja tilauksen mukaan SQL: ssä
Sisältö
SQL sallii kyselyn avulla saatujen tietojen järjestämisen. Meillä on kaksi lauseketta kyselystä saatujen tietojen järjestämiseen, jotka ovat Ryhmä- ja Järjestä-lauseke. Ryhmä By ja Order By -lause erottaa sen Ryhmittele lauseketta käytetään, kun haluamme soveltaa yhdistelmäfunktiota useampaan kuin yhteen joukkoon tuples ja Tilaa lauseketta käytetään, kun haluamme lajitella kyselyn avulla saadut tiedot. Keskustelemme eräistä ryhmälausekkeen ja tilauslausekkeen eroista alla olevan vertailukaavion avulla.
- Vertailutaulukko
- Määritelmä
- Keskeiset erot
- johtopäätös
Vertailutaulukko
Vertailun perusteet | Ryhmittele | Tilaa |
---|---|---|
perustiedot | Ryhmä By -ryhmää käytetään muodostamaan ryhmä tuplesarjasta. | Järjestysmääräystä käytetään järjestämään kyselyn tuloksena saadut tiedot Lajiteltu-muodossa. |
ominaisuus | Yhdistelmä-toiminnon alla oleva attribuutti ei voi olla ryhmäkohtaisesti. | Yhdistelmän mukainen ominaisuus voi olla järjestyksessä lausekkeen mukaan. |
maa | Tehty ominaisuusarvojen samankaltaisuuden perusteella. | Tehty nousevan ja laskevan järjestyksen perusteella. |
Ryhmän määritelmä lauseen mukaan
Yhdistelmätoiminnot, kuten avg, min, max, summa, count, lisätään yksittäiseen tuplesarjaan. Jos haluat käyttää aggregoituja funktioita tuplesarjan ryhmään, meillä on siihen ryhmälauseke. Ryhmittele lauseen mukaan ryhmittelevät parit, joilla on sama ominaisuusarvo.
On yksi asia muistaa ryhmälausekkeesta, varmista, että ominaisuus alla Ryhmittele lausekkeen on oltava VALINTA lauseke mutta ei alle kokonaisfunktio. Jos Ryhmittely-lause sisältää attribuutin, joka ei ole SELECT-lauseen alainen, tai jos se on SELECT-lauseen alla, mutta aggregaattitoiminnossa, kysely tulee virheelliseksi. Voimme siis sanoa, että Group By -lauseketta käytetään aina yhdessä SELECT-lauseen kanssa.
Otetaanpa esimerkki ymmärtää Group By -lause.
VALITSE Osasto _ID, keskiarvo (palkka) kuin keskimääräinen palkka opettajaryhmältä osaston mukaan_ID.Voit nähdä, että aluksi muodostuu välitulos, joka on ryhmitelty yksiköt. Seuraavaksi aggregoidun funktion keskiarvoa käytetään jokaisessa ryhmässä, ja tulos esitetään alla.
Tilauksen määritelmä lauseen mukaan
Järjestyslausekkeen avulla näytetään kyselyllä saadut tiedot lajitellussa järjestyksessä. Kuten Group By -lauseke, Order By -lauseketta käytetään myös yhdessä SELECT-lauseen kanssa. Jos et mainitse lajittelujärjestystä, Järjestä lausekkeen mukaan lajitellaan tiedot nousevassa järjestyksessä. Voit määrittää nousevan järjestyksen ASC ja laskeva järjestys nimellä desc.
Ymmärtäkäämme tilaamislausekkeen toiminta seuraavan esimerkin avulla. Meillä on Opettaja-taulukko, ja aion lajitella Opettaja-taulukon kahteen sarakkeeseen Department_Id ja Palkka.
Valitse osasto_ID, palkka opettajalta tilauksen mukaan osasto_Id asc, palkan kuvaus. Voit nähdä, että ensin se järjestää osaston _ID nousevassa järjestyksessä ja sitten se järjestää palkat samassa osastossa laskevassa järjestyksessä.- Ryhmittele lauseen mukaan ryhmittelee sarjan sarjan sarjan SELECT-lauseen alla olevassa suhteessa. Toisaalta Järjestyslauseke lajittelee kyselyn tulokset nousevassa tai laskevassa järjestyksessä.
- Kokonaistoiminnon alainen attribuutti ei voi olla ryhmäkohtaisesti lauseke, kun taas aggregaattitoiminnon attribuutti voi olla siellä Järjestyslausekkeen alla.
- Kopioiden ryhmittely tehdään samankaltaisuuden perusteella kopioiden ominaisuuksien arvojen välillä. Toisaalta järjestys tai lajittelu tapahtuu nousevan tai laskevan järjestyksen perusteella.
johtopäätös:
Jos haluat muodostaa ryhmän tuplesarjoista, sinun on käytettävä Group By -lauseketta. Jos haluat järjestää yhden sarakkeen tai useamman kuin yhden sarake tuplesarjassa nousevassa tai laskevassa järjestyksessä, on käytettävä Order By -lauseketta.