PostgreSQL

PostgreSQL NTILE -ikkunatoiminto

PostgreSQL NTILE -ikkunatoiminto
Ikkunamenetelmät PostgreSQL: ssä on erotettu erilaisten tietojen tasaamiseksi ja ne ovat välttämättömiä analyyttisissä ja muissa PostgreSQL-käyttötapauksissa. NTILE () -menetelmä, jota seuraa OVER-lauseke PostgreSQL: ssä, hylätään jakamaan järjestetyt rivit jonkin verran kuin luokiteltujen ämpärien sarja. Ämpäri ei ole mitään muuta kuin joukko paremmuusjärjestyksessä olevia ryhmiä. Tässä artikkelissa opit jakamaan lajitellut rivit osiossa tietylle järjestettyjen ryhmien luvulle PostgreSQL NTILE () -ominaisuuden avulla. NTILE () -menetelmä kohdistaa ämpärinumeron jokaiselle ryhmälle, joka alkaa sarjassa 1, osoittaen joukon, jolle rivillä on paikkansa.

Syntaksi:

>> NTILE (ämpärit) YLITTÄIN [[OSIOITUMINEN osion lausekkeen mukaan,…] [ORDET BY lajittelulauseke]] [ASC | DESC],…]);

Ensinnäkin NTILE-menetelmän ymmärtämiseksi kirjaudu sisään PostgreSQL-kuoresta. Siksi yritä käynnistää PostgreSQL-komentorivikuori sovelluksista. Jos haluat työskennellä toisella palvelimella, kirjoita palvelimen nimi; muuten paina Enter. Jos sinun on harjoiteltava aiemmin määritetyssä tietokannassa, e.g., Postgres, paina sitten Enter tai muuten, kirjoita tietopankin otsikko, e.g. 'testata'. Jos haluat käyttää muuta kuin 5432-porttia, kirjoita se; jos ei, jätä se sellaisenaan ja paina Enter jatkaaksesi. Se voi pyytää sinua antamaan käyttäjänimen, jos sinun on vaihdettava uuteen käyttäjätunnukseen. Kirjoita käyttäjänimi; muuta, paina vain Enter. Lopuksi sinun on lisättävä nykyinen käyttäjän salasanasi vaihtaaksesi komentorivillä käyttämällä kyseistä käyttäjää alla. Sen jälkeen, kun kaikki pakolliset tiedot on syötetty tehokkaasti, voit alkaa työskennellä NTILE: n parissa.

Jos haluat aloittaa NTILE-ohjelman käytön, sinun on luotava uusi taulukko CREATE-komennolla, jos sinulla ei ole sitä. Ajattele alla olevaa taulukkoa ”työntekijä” PostgreSQL-tietokannassasi nimeltä testi. Tämä taulukko sisältää neljä saraketta e.g., tietyn yrityksen työntekijän henkilötunnus, nimi, ikä ja palkka. Jokaisessa sarakkeessa on yhteensä 10 riviä, mikä tarkoittaa 10 tietuetta kussakin sarakekentässä.

>> VALITSE * työntekijältä;

Aluksi meidän on ymmärrettävä yksinkertainen käsite tietueiden hakemisesta taulukosta ORDER BY -lausekkeen avulla. Olemme suorittaneet alla olevan SELECT-komennon käyttämättä NTILE: tä käsitteen käsittelemiseksi ja ymmärtämiseksi lyhyesti. Haemme sarakkeiden tietueet; nimi, ikä ja palkka lajitellessasi tietueita "ikä" -kentän nousevassa järjestyksessä. Voit nähdä, että se näyttää vain kuvassa esitetyt tietueet.

>> VALITSE työntekijän nimi, ikä, palkka Tilauksesta iän mukaan;

NTILE: n () käyttö yli TILAUSLAUSEKEEN:

Oletetaan, että sama taulukko "työntekijä", aloitetaan NTILE () OVER -lausekkeen käyttö esimerkissämme. Tässä esimerkissä olemme valinneet kaksi saraketta; nimi ja palkka, samalla kun lajitellaan tulos, joka liittyy sarakkeen ”palkka” nousevaan järjestykseen. Tulos sisältää tietoja, joissa työntekijän ikä on yli 24 vuotta. Olemme määrittäneet NTILE-kauhan arvoksi “3”, koska haluamme jakaa rivit 3 ämpäriin, e.g., 1-3. Voit nähdä, että rivit on jaettu onnistuneesti kolmeen yhtä suureen ryhmään, jotka sisältävät 3 riviä kussakin kauhassa.

>> VALITSE nimi, palkka, NTILE (3) YLITTY (PALAUTA PALKITTUIN) työntekijältä WHERE ikä> '24';

Otetaan nyt toinen esimerkki, kun käytetään samaa taulukkoa "työntekijä". Tällä kertaa haluamme hakea kolmen sarakkeen tietueet; nimi, ikä ja palkka käyttämällä komentokuoren SELECT-kyselyä. WHERE-lausekkeeseen on tehty pieniä muutoksia. Tällä hetkellä olemme etsineet pöytäkirjaa "työntekijä", jos ikä on alle 27 vuotta, joka saa vain kirjaa, jonka ikä on alle 27. Toisaalta ämpäri-arvossa ei ole muutoksia, koska se on jälleen 3. Kokeilemalla ilmoitettua komentoa olemme löytäneet vain kolme tietuetta, jotka on jaettu tasan 3 ämpäriin kuten kuvassa näkyy.

>> VALITSE nimi, ikä, palkka, NETTITIEDOT (3) YLITTYVÄT (PALAUTA PALKITTUIN) työntekijältä, missä ikä < '27';

NTILE (): n käyttö YLEISEN TILAUS JA JAKELU Lausekkeen mukaan:

Otetaan esimerkki NTILE () OVER -toiminnosta, kun käytetään lausekkeita PARTITION BY ja ORDER BY samanaikaisesti. Oletetaan, että käytetään muuttumatonta taulukkoa "työntekijä" tietokannan "testistä". Tässä esimerkissä sinun on valittava kolme saraketta; nimi, ikä ja palkka lajitellessa nousevalla tavalla "ikä" -kenttää. Lisäksi olemme käyttäneet PARTITION BY -lauseketta sarakkeessa "palkka" tehdäkseen osioita taulukosta tämän sarakkeen mukaisesti. Tässä kyselyssä ei ole käytetty erityistä ehtoa, mikä tarkoittaa, että kaikki taulukon "työntekijä" tietueet näytetään. NTILE-kauhan arvo on 3. Alla esitetyn kyselyn suorittamisen yhteydessä näet alla olevan tuloksen. Osiot tehdään sarakkeen "palkka" erillisten arvojen mukaan. Kaikki sarakkeen "palkka" arvot ovat erilliset, siksi se on eri osioissa paitsi arvo "60000". Tämä tarkoittaa, että jokainen osio sai yhden arvon paitsi yhden. Sen jälkeen kaikki osiorivit luokiteltiin kauhojen kautta. Vain yksi ämpäri sai 2. sijan.

>> VALITSE työntekijän nimi, ikä, palkka, NETTITIEDOT (3) YLITTYVÄT (OSAKKEET PALKKIEN, TILAUKSEN IÄN JÄLKEEN);

Otetaan sama esimerkki NTILE () OVER -sovelluksesta käyttämällä PARTITION BY- ja ORDER BY -lausekkeita WHERE-lausekkeella. WHERE-lausekkeessa olemme määrittäneet ehdon, jonka mukaan ainoat haettavat tietueet ovat silloin, kun työntekijän ikä on alle 27 vuotta. Saimme vain 3 tulosta, joissa oli 2 osiota iän ja sarakkeen ”ntile” sarakkeen mukaan.

>> VALITSE nimi, ikä, palkka, NETTITIEDOT (3) YLITTYVÄT < '27';

Päätelmä:

Tässä oppaassa olemme keskustelleet erilaisista esimerkeistä nilefunktioista. Voit toteuttaa ne tarpeen mukaan.

Kuinka käyttää GameConqueror-huijausmoottoria Linuxissa
Artikkelissa on opas GameConqueror-huijausmoottorin käytöstä Linuxissa. Monet Windows-pelejä pelaavat käyttäjät käyttävät "Cheat Engine" -sovellusta m...
Parhaat pelikonsoliemulaattorit Linuxille
Tässä artikkelissa luetellaan suositut pelikonsolin emulointiohjelmistot, jotka ovat saatavana Linuxille. Emulointi on ohjelmistojen yhteensopivuusker...
Best Linux Distros for Gaming in 2021
The Linux operating system has come a long way from its original, simple, server-based look. This OS has immensely improved in recent years and has no...