sql >> Databáze >  >> RDS >> Mysql

GROUP BY - neseskupujte NULL

Možná byste měli přidat něco do prázdných sloupců, aby byly jedinečné, a seskupit je? Hledal jsem nějakou sekvenci, kterou bych použil místo UUID(), ale tohle by mohlo fungovat stejně dobře.

SELECT `table1`.*, 
    IFNULL(ancestor,UUID()) as unq_ancestor
    GROUP_CONCAT(id SEPARATOR ',') AS `children_ids`
FROM `table1` 
WHERE (enabled = 1) 
GROUP BY unq_ancestor


  1. Dynamické SQL a Temp tabulky T-SQL

  2. Postgres spoušť po vložení přístupu NOVÉ

  3. Existuje v MySQL FIND_IN_SET podle indexu?

  4. 9 nejčastějších chyb návrhu databáze