我有一个汇总一些列的查询
SELECT P, sum (K)
FROM table
GROUP BY P
我希望如果总和大于 1,我的结果将是 1。含义而不是:
P K
1 2
3 4
23 0
我会有:
P K
1 1
3 1
23 0
我有一个汇总一些列的查询
SELECT P, sum (K)
FROM table
GROUP BY P
我希望如果总和大于 1,我的结果将是 1。含义而不是:
P K
1 2
3 4
23 0
我会有:
P K
1 1
3 1
23 0
利用CASE
SELECT P,
(CASE WHEN sum(K) > 0 THEN 1 ELSE 0 END) AS Result
FROM tableName
GROUP BY P
更新
感谢卢夫
SELECT P, LEAST(1, sum (K))
FROM table
GROUP BY P
听起来有 2 个条件 sum(K) > 1 然后你想要, sum(K) < 1 的唯一选项是 0。所以这会给你。