我有MySQL的表結構:Mysql的COUNT和IF使用
| uid | itemid
| -------------------
| 1001 | 9999
| 1001 | 8888
| 2002 | 8888
| ... | ...
UID和爲itemid不是唯一列。 Bun uid + itemid是獨特的組合。
我需要按itemid計數行。我使用下一個查詢:
SELECT itemid, COUNT(*)
FROM unlikes
WHERE itemid IN ('9999', '8888') GROUP BY itemid;
這個工程!
接下來,我需要知道哪一行有混凝土uid。我用:
SELECT itemid, COUNT(*), IF (uid = '1001', TRUE, FALSE) toggled
FROM unlikes
WHERE itemid IN ('9999', '8888') GROUP BY itemid;'
不工作。如果我有不止一行itemid = 8888,那麼比觸發= FALSE。如果組中的一個有uid = 1001,我需要切換= TRUE;
替換'IF(UID = '1001',TRUE,FALSE)'由'總和(情況下,當UID = '1001',那麼1否則爲0)' – danihp