SQL-komennon SELECT DISTINCT käyttö
SQL SELECT DISTINCT varmistaa, että tietokyselyn tuloksiin sisältyy vain yksilöllisiä tietueita ja rivejä. Se poistaa kyseisistä tietueista ja riveistä kaksoiskappaleet, mikä mahdollistaa selkeämmän ja tarkemman tietojen analysoinnin.
Mikä on SQL SELECT DISTINCT?
SQL SELECT DISTINCT on käsittelyoperaattori, jota käytetään yhdessä SQL SELECT -komennon kanssa. Kyselyissä SELECT valitsee yhden tai useamman sarakkeen ja tietueen. Yhdistettynä DISTINCT se varmistaa, että kyselyn tulokset sisältävät vain yksilöllisiä rivejä, ja poistaa päällekkäiset rivit ja arvot. Voit yhdistää SELECT DISTINCT muihin SQL-operaattoreihin ja SQL-komentoihin muokataksesi kyselyjäsi omien tarpeidesi mukaan.
Mitä eroa on SQL SELECT DISTINCT:llä ja SELECT UNIQUEllä?
Sanoilla ”unique” ja ”distinct” on samankaltainen merkitys, mutta SQL-operaattorit UNIQUE ja DISTINCT palvelevat eri tarkoituksia. Jotta voisit käyttää SQL SELECT DISTINCT oikein, sinun on tiedettävä, miten se eroaa UNIQUEstä.
| SQL SELECT DISTINCT | SQL SELECT UNIQUE |
|---|---|
| Tarkistaa tietojoukot päällekkäisten rivien ja arvojen varalta; poistaa päällekkäisyydet ja palauttaa vain yksilölliset tulokset | Sopii estämään päällekkäisyyksien syntymistä valituissa taulukoissa ja sarakkeissa sarakkeen rajoitusten avulla |
| Käytetään pääasiassa tietojoukkojen arviointiin, analysointiin ja vertailuun selkeiden, merkityksellisten tulosten saamiseksi | Käytetään taulukoiden luomisessa ja muokkaamisessa paremman tietojen eheyden varmistamiseksi ilman päällekkäisyyksiä |
Haluatko kerrata SQL:n perusteet nopeasti? Esimerkkejä sisältävässä SQL-esittelyssämme esitellään tärkeimmät toiminnot.
Mikä on SQL SELECT DISTINCT:n syntaksi?
SQL SELECT DISTINCT:n perusrakenteet ovat seuraavat:
SELECT DISTINCT ColumnA, ColumnB, …
FROM tablesqlSiinä käytetään seuraavia parametreja:
SELECT DISTINCT: Tässä määritetään, mihin sarakkeisiinSELECT-komentoa jaDISTINCT-operaattoria halutaan soveltaa.FROM: Määritä tässä, missä taulukossa kyseiset sarakkeet sijaitsevat.WHERE: Valinnaisessa WHERE-lauseessa voit lisätä lisäehtoja kyselyn rajaamiseksi.
Mihin SQL SELECT DISTINCT käytetään?
SQL SELECT DISTINCT:lla on lukemattomia käyttötapauksia. Tässä muutamia esimerkkejä:
- Yhdistä useilla riveillä esiintyvät asiakas-, tilaus-, potilas- tai tuotetiedot yhdeksi yksilölliseksi tietueeksi
- Laske ja näytä ostojen määrä tilausten ja tuotetunnusten perusteella
- Hae yksilölliset potilas- tai asiakastiedot
- Näytä kaikki toimitusosoitteet tai toimittajat tietyllä alueella
Esimerkkejä SQL SELECT DISTINCT:stä
Tarkastelemme nyt kahta esimerkkiä, joissa käytetään SELECT DISTINCT.
Hae kaikki asiakkaat
Oletetaan, että haluat hakea kaikki yksilölliset asiakkaat taulukosta nimeltä ”Orders”. Et halua, että tulokseen sisältyy päällekkäisiä rivejä, vaikka asiakas olisi tehnyt useita tilauksia. Syntaksi tälle näyttäisi seuraavalta:
SELECT DISTINCT Customer_name
FROM OrderssqlTiettyä aluetta edustavien asiakkaiden suodattaminen
Voit käyttää WHERE lisätäksesi lisäehtoja asiakastietojen arviointiin. Oletetaan, että haluat hakea kaikkien Isossa-Britanniassa asuvien asiakkaiden nimet taulukosta nimeltä ”Orders”. Se näyttäisi tältä:
SELECT DISTINCT Customer_name, Country
FROM Orders
WHERE Country = 'UK'sqlOnko SQL SELECT DISTINCT:lle vaihtoehtoja?
SELECT DISTINCT on kätevä tapa poistaa kaksoiskappaleet kyselyistä, mutta se ei aina ole paras ratkaisu. Suurissa tietojoukoissa sen käyttö kuluttaa paljon resursseja, koska se vertaa jokaista saraketta erikseen. Tällöin voit harkita seuraavia vaihtoehtoja, joilla on samanlaisia toimintoja:
GROUP BY: SQL:n GROUP BY -lauseet ryhmittelevät tietueet määrittelemiesi sarakkeiden perusteella. Voit tarkentaa niitä lisäfunktioiden ja operaattoreiden avulla.EXISTS: SQL EXISTS tarkistaa, onko arvoja ja tietueita toisessa taulukossa.COUNT: YhdistäDISTINCTja SQL COUNT laskeaksesi sarakkeen yksilölliset arvot.SELECT+FROM+WHERE: Voit rajata tuloksia paremmin alikyselyllä (toisen kyselyn sisään upotetulla kyselyllä). Valitse alikyselyssä sarake käyttämälläSELECT, määritä käsiteltävä taulukko käyttämälläFROMja aseta sitten ehdot, jotka tulosten on täytettävä, käyttämälläWHERE.