SQL:不同条件的不同聚合值

时间:2013-09-02 16:30:27

标签: sql aggregate

据我所知,我遇到了这么难的问题。

我需要编写一个执行此操作的唯一查询:

  

写一个查询,当天星期一提取计算机的总和   卖了,剩下的时间只是笔记本电脑的总和。

例如我有这张表

Day      LaptopSold DesktopSold Total
Monday      2            2        4
Tuesday     2            3        5
Monday      1            1        2
Wednesday   2            2        4
Tuesday     1            4        5

结果应该是这样的:

Day       QtySold
Monday      6
Tuesday     3
wed         2

我可以通过Group ByDay字段编写两个单独的查询来实现目标,但在一个查询中对我来说是不可能的!

请帮帮我吧! 提前致谢 路

1 个答案:

答案 0 :(得分:4)

您可以使用CASE

选择添加剂字段
SELECT DAY, 
       SUM(CASE DAY 
             WHEN 'MONDAY' THEN TOTAL 
             ELSE LAPTOPSOLD 
           END) AS QtySold 
FROM   TBL 
GROUP  BY DAY