SQL SELECT DISTINCT zorgt ervoor dat alleen unieke records en rijen worden opgenomen in de re­sul­ta­ten van een ge­ge­vens­query. Het ver­wij­dert du­pli­ca­ten uit de be­tref­fen­de records en rijen, waardoor een dui­de­lij­ke­re en nauw­keu­ri­ge­re ge­ge­vens­ana­ly­se mogelijk wordt.

Wat is SQL SELECT DISTINCT?

SQL SELECT DISTINCT is een ver­wer­kings­ope­ra­tor die wordt gebruikt met het SQL SELECT-commando. In query’s se­lec­teert SELECT een of meer kolommen en records. In com­bi­na­tie met de DISTINCT operator zorgt het ervoor dat uw query­re­sul­ta­ten alleen unieke rijen bevatten en ver­wij­dert het dubbele rijen en waarden. U kunt SELECT DISTINCT com­bi­ne­ren met andere SQL-operators en SQL-commando’s om uw query’s aan te passen aan uw in­di­vi­du­e­le behoeften.

Wat is het verschil tussen SQL SELECT DISTINCT en SELECT UNIQUE?

‘Unique’ en ‘distinct’ hebben een ver­ge­lijk­ba­re betekenis als woorden, maar de SQL-ope­ra­to­ren UNIQUE en DISTINCT hebben ver­schil­len­de doel­ein­den. Om SQL SELECT DISTINCT correct te gebruiken, moet u weten hoe deze verschilt van UNIQUE.

SQL SELECT DISTINCT SQL SELECT UNIQUE
Con­tro­leert datasets op dubbele rijen en waarden; ver­wij­dert over­tol­li­ge gegevens en geeft alleen unieke re­sul­ta­ten weer Geschikt voor het voorkomen van dubbele invoer in ge­se­lec­teer­de tabellen en kolommen met behulp van ko­lom­be­per­kin­gen
Wordt voor­na­me­lijk gebruikt voor het evalueren, ana­ly­se­ren en ver­ge­lij­ken van datasets om dui­de­lij­ke, zinvolle re­sul­ta­ten te ver­krij­gen Wordt gebruikt bij het maken en bewerken van tabellen om een betere ge­ge­vens­in­te­gri­teit zonder re­dun­dan­tie te ga­ran­de­ren
Tip

Op zoek naar een snelle op­fris­sing van SQL? Onze SQL-in­tro­duc­tie met voor­beel­den pre­sen­teert de be­lang­rijk­ste functies.

Wat is de syntaxis van SQL SELECT DISTINCT?

De ba­sis­syn­taxis voor SQL SELECT DISTINCT ziet er als volgt uit:

SELECT  DISTINCT  ColumnA, ColumnB, …
FROM table
sql

Het gebruikt de volgende pa­ra­me­ters:

  • SELECT DISTINCT: Hier geeft u aan op welke kolommen u het SELECT -commando en de DISTINCT -operator wilt toepassen.
  • FROM: Geef hier aan welke tabel deze kolommen bevat.
  • WHERE: In een optionele WHERE-clausule kunt u aan­vul­len­de voor­waar­den toevoegen om uw query te verfijnen.

Waarvoor wordt SQL SELECT DISTINCT gebruikt?

Er zijn talloze toe­pas­sin­gen voor SQL SELECT DISTINCT. Hier volgen enkele voor­beel­den:

  • Verminder klant-, bestel-, patiënt- of pro­duct­ge­ge­vens die in meerdere rijen voorkomen tot één unieke ver­mel­ding
  • Tel en toon het aantal aankopen op basis van be­stel­lin­gen en product-ID’s
  • Haal unieke patiënt- of klant­ge­ge­vens op
  • Geef alle ver­zend­adres­sen of le­ve­ran­ciers in een regio weer

Voor­beel­den van SQL SELECT DISTINCT

We zullen nu 2 voor­beel­den bekijken met behulp van SELECT DISTINCT.

Alle klanten ophalen

Stel dat u alle unieke klanten uit een tabel met de naam ‘Orders’ wilt ophalen. U wilt geen dubbele rijen als een klant meerdere be­stel­lin­gen heeft geplaatst. De syntaxis daarvoor ziet er als volgt uit:

SELECT  DISTINCT  Customer_name
FROM  Orders
sql

Klanten uit een bepaalde regio filteren

U kunt een WHERE -clausule gebruiken om aan­vul­len­de voor­waar­den toe te voegen aan uw evaluatie van klant­ge­ge­vens. Stel dat u de namen van alle klanten in het Verenigd Ko­nink­rijk wilt ophalen uit een tabel met de naam ‘Orders’. Dat zou er als volgt uitzien:

SELECT  DISTINCT  Customer_name, Country
FROM  Orders
WHERE  Country  =  'UK'
sql

Zijn er al­ter­na­tie­ven voor SQL SELECT DISTINCT?

SELECT DISTINCT is een prak­ti­sche manier om du­pli­ca­ten uit uw query’s te ver­wij­de­ren, maar het is niet altijd de beste oplossing. Bij toe­pas­sing op grote datasets verbruikt het veel resources om elke af­zon­der­lij­ke kolom te ver­ge­lij­ken. In dat geval kunt u deze al­ter­na­tie­ven met ver­ge­lijk­ba­re functies bekijken:

  • GROUP BY: SQL GROUP BY- clausules groeperen records uit de door u opgegeven kolommen. U kunt ze nauw­keu­ri­ger maken met behulp van aan­vul­len­de functies en ope­ra­to­ren.
  • EXISTS: SQL EXISTS con­tro­leert of waarden en records aanwezig zijn in een andere tabel.
  • COUNT: Combineer DISTINCT met SQL COUNT om de unieke waarden in een kolom te tellen.
  • SELECT + FROM + WHERE: U kunt uw re­sul­ta­ten beter verfijnen met een subquery (een query die in een andere query is genest). Kies in de subquery de kolom met SELECT, geef met FROM aan in welke tabel u werkt en stel ver­vol­gens met WHERE de voor­waar­den in waaraan de re­sul­ta­ten moeten voldoen.
Ga naar hoofdmenu