I en IF
udtryk check, om en værdi er NULL i gruppen. Jeg kan komme i tanke om et par måder at gøre det på:
1) Tæl værdierne, der ikke er nul, og sammenlign dem med antallet af rækker i gruppen:
SELECT a, IF(COUNT(b) = COUNT(*), GROUP_CONCAT(b), NULL) AS bs
FROM gc
GROUP BY a
Se det fungere online:sqlfiddle
2) Tæl antallet af nulværdier ved hjælp af SUM
:
SELECT a, IF(SUM(b IS NULL) = 0, GROUP_CONCAT(b), NULL) AS bs
FROM gc
GROUP BY a
Se det fungere online:sqlfiddle