DISTINCT
nicht so funktioniert, müssen die Werte in allen zurückgegebenen Spalten unterschiedlich sein.
Sie können immer eine Aggregatfunktion für den hash
verwenden Funktion und GROUP BY name
was einen hash
zurückgibt Wert für jeden name
:
SELECT name, min(hash) hash
FROM my_table
WHERE name LIKE '%An%'
GROUP BY name;
Siehe SQL-Geige mit Demo .
Hinweis: Verwenden der Aggregatfunktion mit dem GROUP BY
stellt sicher, dass Sie immer den erwarteten Wert für den hash
zurückgeben Säule. Wenn Sie GROUP BY
nicht verwenden oder aggregieren Sie die Elemente im SELECT
list, erhalten Sie möglicherweise unerwartete Ergebnisse. (siehe MySQL-Erweiterungen zu GROUP BY
)
Aus den MySQL-Dokumenten: