我得到了这样的表,称为votes
"id" "votedElm" "voteType" "voteProcessed" "country"
"1" "4" "0" "0" "US"
"2" "5" "0" "0" "US"
"3" "6" "1" "0" "US"
"4" "8" "0" "0" "US"
"5" "9" "0" "0" "US"
"6" "10" "0" "0" "US"
"7" "10" "0" "0" "US"
"8" "10" "0" "0" "US"
"9" "8" "1" "0" "US"
"10" "9" "1" "0" "US"
"11" "20" "1" "0" "US"
"12" "10" "1" "0" "US"
"13" "10" "1" "0" "US"
"14" "20" "0" "0" "US"
"15" "22" "0" "0" "US"
"16" "20" "0" "0" "US"
"17" "21" "0" "0" "US"
"18" "10" "0" "0" "US"
"19" "10" "0" "0" "US"
"20" "20" "0" "0" "US"
"21" "21" "0" "0" "US"
"22" "22" "0" "0" "US"
"23" "22" "0" "0" "US"
"24" "22" "1" "0" "US"
我使用这个sql来获取不同的like和sum:
选择 votedElm,count(votedElm) from votes where country = 'US' and voteType = 0 group by votedElm;
但是,在该表中,我有 voteType 0 和 1
。 0
是+
投票,1
是-
投票。
同一条sql中能否将+
票数相加,并从总和中扣除-
票数?而不是为此进行 2 个不同的查询?
我可以这样做吗?
最佳答案
是的,就像这样:
SELECT
votedElm,
SUM(CASE WHEN voteType = 0 THEN 1 ELSE -1 END) AS Totalcount
FROM votes
WHERE country = 'US'
GROUP BY votedElm;
在这里查看它的实际效果:
关于php - 根据 mysql sql 查询中的投票类型对总和进行加减,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16456561/