Jsou si v podstatě ekvivalentní (ve skutečnosti takto implementují některé databáze DISTINCT
pod kapotou).
Pokud je jeden z nich rychlejší, bude DISTINCT
. Důvodem je to, že ačkoli jsou tyto dva stejné, optimalizátor dotazů by musel zachytit skutečnost, že vaše GROUP BY
nevyužívá žádné členy skupiny, pouze jejich klíče. DISTINCT
dělá to explicitní, takže vám projde trochu hloupější optimalizátor.
Máte-li pochybnosti, vyzkoušejte!