选择具有相同名称和大小的列的总和

时间:2014-09-06 10:49:29

标签: mysql sql group-by

我有一个像这样的MySQL表:

material_name   size        rcv     issue   
abc             250mm       10      8
abc             250mm       10      8
abc             150mm       25      4
dfz             450mm       15      6
dfz             250mm       42      25
dfz             250mm       34      35
xyz             250mm       25      20
xyz             150mm       42      40
lmn             150mm       10      1

我正在尝试select total rcvtotal issue 其中material_name and size都是唯一的。

1 个答案:

答案 0 :(得分:0)

我想您希望以下(MATERIAL_NAME,SIZE)对是唯一的。在这种情况下,试试这个:

SELECT MATERIAL_NAME, SIZE, SUM(RCV), SUM(ISSUE)
    FROM TABLE
    GROUP BY MATERIAL_NAME, SIZE;

否则,如果您不希望在一列上有重复项 - 例如:

abc 250 mm
abc 150 mm

您需要其他条件(必须忽略哪一项)。

或者您可能希望将问题分为两部分:

-- for name
SELECT MATERIAL_NAME, SUM(RCV), SUM(ISSUE)
    FROM TABLE
    GROUP BY MATERIAL_NAME, SIZE;

-- for size
SELECT SIZE, SUM(RCV), SUM(ISSUE)
    FROM TABLE
    GROUP BY MATERIAL_NAME, SIZE;