仅在一个选定值上应用where子句

时间:2016-02-12 02:40:21

标签: php mysql sql

说我有一张如下表:

id    quantity
1       5
2       3
3       6

我想检索id = 2的行的数量,以及表的总数量,我想我可以做如下的事情:

 sql="select quantity where id='2' sum(quantity) as total_quantity from table";

现在,我知道这个说法是错误的,但我希望你能理解我在这里要做的事情。我怎样才能实现这样的目标呢?

2 个答案:

答案 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