2013-07-17 35 views
-2

我有一个表所示:MySQL的:在一列中选择多列,总金额

-----------+------| 
product_id |price | 
-----------+------| 
    1  + 5 | 
-----------+------| 
    2  + 15 | 
-----------+------| 
    3  + 25 | 
-----------+------| 

我需要像输出:

-----------+------| 
product_id |sum | 
-----------+------| 
    1  + 45 | 
-----------+------| 
    2  + 45 | 
-----------+------| 
    3  + 45 | 
-----------+------| 

我当前的查询:

SELECT product_id, (SELECT SUM(price) FROM tableName) `sum` FROM tableName. 

是否可以在不使用2个SELECT查询或GROUP_CONCAT的情况下执行此操作? 请帮忙。

在此先感谢!

注意:我在表中有成千上万行,并且更多条件(包括其他表数据)将被添加到此查询中。

+0

向我们展示您的查询是什么,现在和你试图让总和到您的数组什么。 – Pieter

+0

问题已更新。请检查。 –

回答

-1

使用这样的查询:

SELECT *, sum(price) AS sum FROM table WHERE condition = value

+0

这将只返回一行。 –

-1

你可以试试这个代码

select product_id, (select sum(price) from PRODUCTS) as sum FROM products 
+0

您可以在不使用2选择查询的情况下生成相同的输出吗? –

+0

抱歉,男人不知道.. – mck

+0

感谢您的回复! –

-1
SELECT product_id , sum(price) AS sum FROM table WHERE condition = value 

尽量不要在SELECT语句中使用子查询。

+0

这将只返回一行。 –

0

SELECT a.product_id,SUM(b.price)FROM product_table AS a.pricetable为B

+0

这只返回一行。 –