MYSQL查询用于选择一个表的条件的结果并在另一个表上显示它

时间:2013-05-20 05:32:07

标签: mysql sql

第2行应从第1行中减去...并将结果显示在第2行

第一桌

--------------------------------
stock_name|temple|quantity|type
--------------------------------
rice      |shiva |  32    |purchase
rice      |shiva |  10    |issue

最初第二个表是空的

我在第二张表中究竟需要的内容如下

---------------------------
stock_name|temple|quantity
--------------------------
rice      |siva  |22

2 个答案:

答案 0 :(得分:1)

INSERT INTO secondTable (stock_name,temple,quantity)
SELECT  stock_name,
        temple,
        SUM(CASE WHEN type = 'purchase' 
                     THEN quantity 
                     ELSE quantity * -1 
                 END) quantity
FROM    firstTable
GROUP   BY stock_name, temple

查询的作用是将第一个表中的结果插入到第二个表中,但已经计算出数量。

答案 1 :(得分:0)

Insert into Table2(stock_name,temple,quantity)
SELECT a.stock_name, a.temple, SUM(Case when Type='purchase' then quantity else (quantity*-1) End) AS quantity
FROM Table1 a
GROUP BY a.stock_name, a.temple