phpbar.de logo

Mailinglisten-Archive

AW: [php] Asulsen aller einmaligen Werte

AW: [php] Asulsen aller einmaligen Werte

Dennis Sterzenbach lists at darknoise.de
Die Okt 28 09:43:42 CET 2003


Tim Hildebrandt wrote:

> Hallo,
> 
> 
> 
>>Frank
>>Stefan
>>Markus
> 
> 
>>Nun möchte ich das er jeden Namen nur einmal ausgibt als Ergebnis so das 
>>ich eine Auswahlliste daraus generieren kann
> 
> 
>>Wie geht so was mit mySQL?
> 
> 
> 
> $query = "SELECT * FROM tabelle WHERE bedingung ORDER BY spalte GROUP BY
> spalte";
> 
> Die gewünschte Spalte wird einerseits sortiert nach Apphabet und
> andererseits
> gruppiert nach identischen Werten. Allerdings wird das ganze bei extrem
> großen
> Datenmengen u.U. etwas unperformant, wenn das Feld nicht mindestens
> indiziert ist.
Bei großen Datenmengen empfiehlt sich sowieso die SQL*RESULT Konstanten
zu verwenden:

"
SELECT [SQL_BIG_RESULT | SQL_SMALL_RESULT..].. Feld1, Feld2 ... Feldn
FROM ....
...

SQL_BIG_RESULT kann bei GROUP BY oder DISTINCT benutzt werden, um dem 
Optimierer mitzuteilen, dass das Ergebnis sehr viele Zeilen haben wird. 
In diesem Fall benutzt MySQL bei Bedarf direkt Festplatten-basierende 
temporäre Tabellen. Ausserdem bevorzugt MySQL in diesem Fall Sortieren 
vor dem Anlegen einer temporären Tabelle mit einem Schlüssel auf den 
GROUP BY-Elementen.
"

-- 
   Dennis Sterzenbach
   http://www.darknoise.de/



php::bar PHP Wiki   -   Listenarchive