group by oder distinct

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • group by oder distinct

    hallo welt!

    aus einer tabelle möchte ich genau 1 spalte auslesen und dabei keine doppelten einträge.
    also kann ich entweder
    SELECT DISTINCT feld FROM tablle
    oder
    SELECT feld FORM tabelle GROUP BY feld
    machen.

    meine testkiste ist relativ schnell und ich hab nur sehr wenig datensätze. da kann ich keinen unterschied messen. wenn das ding jedoch mal in den produktivbetrieb geht, dann können es recht viele datensätze werden. deswegen meine frage:
    was ist rechenintensiver, der DISTINCT oder der GROUP BY query?

  • #2
    aus http://dev.mysql.com/doc/refman/5.0/...mization.html:

    In most cases, a DISTINCT clause can be considered as a special case of GROUP BY. For example, the following two queries are equivalent:

    SELECT DISTINCT c1, c2, c3 FROM t1 WHERE c1 > const;

    SELECT c1, c2, c3 FROM t1 WHERE c1 > const GROUP BY c1, c2, c3;

    Due to this equivalence, the optimizations applicable to GROUP BY queries can be also applied to queries with a DISTINCT clause. Thus, for more details on the optimization possibilities for DISTINCT queries, see Section 7.2.13, “GROUP BY Optimization”.

    Kommentar

    Lädt...
    X