Mysql
 sql >> Datenbank >  >> RDS >> Mysql

Warum sollten Sie nicht DISTINCT verwenden, wenn Sie GROUP BY verwenden könnten?

Wenn Sie wissen, dass zwei Spalten Ihres Ergebnisses immer in direktem Zusammenhang stehen, ist dies langsamer:

SELECT DISTINCT CustomerId, CustomerName FROM (...)

als das:

SELECT CustomerId, CustomerName FROM (...) GROUP BY CustomerId

denn im zweiten Fall muss es nur die ID vergleichen, aber im ersten Fall muss es beide Felder vergleichen. Dies ist ein MySQL-spezifischer Trick. Es funktioniert nicht mit anderen Datenbanken.