Vinnaren i pepparkakshustävlingen!
2009-09-03, 16:21
  #1
Medlem
flipper1446s avatar
Vad är egentligen skillnaden mellan att skriva
Kod:
SELECT DISTINCT FROM accounts WHERE email 'e@mail.com' 
och
Kod:
SELECT FROM accounts WHERE email 'e@mail.com' LIMIT 1 
?

Har jag förstått rätt om DISTINCT får databasen att lista alla rader som matchar förfågan för att sedan stortera ut alla dubletter och enbart returnera de unika raderna, medan LIMIT 1 gör att databasen slutar leta efter fler rader redan när den hittat första raden?
Eller är det endast när man kombinerar DISTINCT och LIMIT? Eller gäller "omedelbart stopp" för båda?
__________________
Senast redigerad av flipper1446 2009-09-03 kl. 16:24.
Citera
2009-09-03, 18:22
  #2
Moderator
Protons avatar
DISTINCT är standard SQL och kommer ge dej endast EN uppsättning om det finns dubletter. LIMIT 1 ger dej den absolut första raden som kommer ur frågan. Observera att LIMIT är en MySQL-specifik konstruktion medan DISTINCT förekommer i standard-sql.
Citera
2009-09-03, 19:33
  #3
Medlem
flipper1446s avatar
Då använder jag LIMIT.
Citera

Stöd Flashback

Flashback finansieras genom donationer från våra medlemmar och besökare. Det är med hjälp av dig vi kan fortsätta erbjuda en fri samhällsdebatt. Tack för ditt stöd!

Stöd Flashback