For at fjerne en række der gentager sig når du nu trækker et udtræk ud så alle dine udtræk er unikke kan du gøre det ved at bruge DISTINCT efter SELECT og før du printer outputtet til browseren.
SELECT DISTINCT last_name FROM t;
Der er forskel på hvordan den fjerne disse gentaglser alt efter om du bruger binær eller ikke binær felter, hvis du bruger binær er ”ABC, Abc og abc” forskellige til hvis du bruger ikke binær felter.
Ved brugen af DISTINCT kan du benytte multi select til at ude lukke en støre sansynlighed for en dublikering.
SELECT DISTINCT last_name, first_name FROM t;
DISTINCT er god til små mængte data men skal man op og benytte nogle forskellige ting som at udelukke 2 e-mail adresser men stadig have brugers navn og adresse med ud kan DSTINCT ikke benyttes, til dette formål ville det være en bædre løsning hvis der bliver benyttet GROUP BY statment.
SELECT navn, adresse, email FROM table GROUP BY email;
På denne måde samler man alle emails samme i en gruppe hvor efter man kan trække adresse og navn med ud som en multi select.
Den største forskel mellem DISTINCT og GROUP BY er at DISTINCT ikke kan sorters men det kan GROUP BY godt, der i mod kan DISTINCT tælle sammen hvor mange lighedere der er mellem sin egen række som eks. Sådan her.
SELECT COUNT( DISTINCT j ) FROM t;