Einzelnen Beitrag anzeigen

nahpets
(Gast)

n/a Beiträge
 
#6

Re: SQL: Informationen aus einem Datum auslesen

  Alt 25. Okt 2006, 09:35
Hallo,

das Problem mit dem Distinct:

Die Syntax mit Distinct(...) finde ich gewöhnungsbedürftig, hab' sie so noch bei keiner anderen Datenbank gesehen.

Eigentlich bezieht sich das Distinct auf die gesamte Zeile und nicht nur auf den Wert einer einzelnen Spalte.
Für meine Begriffe dürfte die Datenbank in etwa folgendermaßen vorgehen:

Hole alle Zeilen, die der genannten Bedingung entsprechen (Select).

Entferne alle Duplikate aus der Ergebnismenge (Distinct).

Eventuell kann man sich das so vorstellen:

SQL-Code:
Select Distinct * from
(
  select spalte1, spalte2, ... from Tabelle where x = y
)
Zuerst wird das Select in den Klammern ausgeführt und über das Ergebnis wird ein zweites Select ausgeführt, das die Duplikate entfernt.

Eine Alternative wäre auch

  select spalte1, spalte2, ... from Tabelle where x = y group by spalte1, spalte2, ... Hier dürfte das gleiche Ergebnis bei herauskommen.

Stephan
  Mit Zitat antworten Zitat