说我有一张如下表:
id quantity
1 5
2 3
3 6
我想检索id = 2的行的数量,以及表的总数量,我想我可以做如下的事情:
sql="select quantity where id='2' sum(quantity) as total_quantity from table";
现在,我知道这个说法是错误的,但我希望你能理解我在这里要做的事情。我怎样才能实现这样的目标呢?
答案 0 :(得分:5)
使用条件聚合:
select sum(case when id = 2 then quantity end) as qty2,
sum(quantity) as total_quantity
from t;
答案 1 :(得分:2)
使用联盟:
SELECT quantity FROM table WHERE id = 2
UNION SELECT SUM(quantity) FROM table