如何使用where子句在mysql中获取所选行的总和?

时间:2016-05-17 03:29:17

标签: mysql sql select sum

这是我的表,我想要一些选定的产品:

enter image description here

select sum(`price`) from add_product;

此查询适用于所有行,但我想使用where子句:

select sum(`price`) from add_product where product_id=1233 and product_id=1234;

怎么做?

3 个答案:

答案 0 :(得分:2)

首先, 纠正你的疑问,

你的productID之间不能有AND, 使用OR代替

    SELECT 
            SUM(`price`) 
    FROM 
            add_product 
    WHERE
            product_id=1233 OR product_id=1234; 

你也可以使用IN子句,

http://www.tutorialspoint.com/mysql/mysql-in-clause.htm

或者,如果您需要产品明智的SUM,那么请使用GROUP BY,

http://www.tutorialspoint.com/mysql/mysql-group-by-clause.htm

    SELECT 
            product_id, SUM(`price`) totprice
    FROM 
            add_product 
    WHERE
            product_id IN (1233,1234)
    GROUP BY
            product_id;

答案 1 :(得分:1)

您可以使用in来代替使用OR。

select sum(`price`) from add_product where product_id in (1233,1234);

答案 2 :(得分:1)

使用BETWEENAND

2 'product_id'

SELECT SUM('price') FROM 'add_product' WHERE 'product_id' BETWEEN 1233 AND 1234

对于按升序排列的3 'product_id'

SELECT SUM('price') FROM 'add_product' WHERE 'product_id' BETWEEN 1233 AND 1235 ORDER BY 'product_id' ASC