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

MySQL:GROUP_CONCAT mit einem ORDER BY COUNT?

Habe selbst eine Lösung gefunden, mit einer Unterabfrage:

SELECT 
  SUBSTRING_INDEX(
    GROUP_CONCAT(DISTINCT name ORDER BY CountName DESC SEPARATOR '||')
  , '||', 1),
  address,
  postalcode,
  place,
  phone
FROM (

  SELECT name, address, postalcode, place, phone , COUNT(name) AS CountName
  FROM addresses
  GROUP BY name, postalcode, phone
  ORDER BY COUNT(name) DESC

) as a
GROUP BY postalcode, phone

Ich frage mich, ob es ohne eine Unterabfrage geht.