我有以下MySQL表(images
):SQL組未正常工作
+----+------------+-----------------------+
| id | gallery_id | path |
+----+------------+-----------------------+
| 58 | NULL | 58.jpg
| 59 | NULL | 59.jpg
| 66 | 9 | 9-001.jpg
| 67 | 9 | 9-002.jpg
| 68 | 10 | 10-001.jpg
| 69 | 10 | 10-002.jpg
...
我想gallery_id,如果它不爲空,選擇行,其中gallery_id爲空或組吧。 所以,預期的結果是:
+----+------------+-----------------------+
| id | gallery_id | path |
+----+------------+-----------------------+
| 58 | NULL | 58.jpg
| 59 | NULL | 59.jpg
| 66 | 9 | 9-001.jpg
| 68 | 10 | 10-001.jpg
...
我試圖用3210函數來實現這一結果:
select * from `images` group by coalesce(gallery_id, id);
但它只返回行,其中gallery_id
爲空。 請告訴我,我做錯了什麼?提前致謝。
您的查詢正常工作。 http://sqlfiddle.com/#!9/e85a45/1 – Mike