sql中case when sum的用法
时间: 2023-10-13 13:17:03 浏览: 196
在SQL中,CASE WHEN SUM的用法通常用于对一个表中的某一列进行求和,并根据求和结果的不同值进行条件判断。具体用法如下:
```
SELECT
CASE
WHEN SUM(column_name) > 0 THEN 'Positive'
WHEN SUM(column_name) = 0 THEN 'Zero'
ELSE 'Negative'
END AS result
FROM
table_name;
```
在上述语句中,SUM(column_name)表示对表中的某一列进行求和,然后根据求和结果的不同值进行条件判断,最终将结果命名为result。根据SUM(column_name)的不同值,可能会得到'Positive'、'Zero'或'Negative'三种结果中的一种。
相关问题
sql case when sum
引用提供了一个正确的SQL语句示例,其中使用了CASE函数来进行条件判断并返回相应的结果。引用指出了在使用CASE函数时需要注意的问题,即只返回第一个符合条件的值,而忽略后面的条件。引用则给出了一个错误的SQL语句示例。
根据问题描述,我理解您想要在SQL语句中使用CASE函数来对sum进行条件判断。可以按照以下方式修改SQL语句来实现您的需求:
SELECT
CASE
WHEN sum(t.COR_STATUS) = 1 THEN '第一类'
WHEN sum(t.COR_STATUS) = 2 THEN '第二类'
ELSE '其他'
END AS result
FROM
T_BUSI_DRILL_RECORD t;
在上述SQL语句中,我们使用了SUM函数对t.COR_STATUS进行求和,并根据求和结果使用CASE函数进行条件判断。根据您的需求,当求和结果为1时,返回'第一类';当求和结果为2时,返回'第二类';否则返回'其他'。请注意,这只是一个示例,具体的条件判断和返回结果应根据您的实际需求进行修改。
case when sum 和 sum case when 的区别
CASE WHEN SUM和SUM CASE WHEN是SQL语句中用于统计和计算的两种不同的方法。
首先,SUM CASE WHEN语句是一种条件聚合函数,它可以根据一个或多个条件来计算聚合值,适用于需要根据特定条件进行分组计算的情况。例如,我们可以使用以下语句计算每个部门的销售额:
```
SELECT department, SUM(CASE WHEN product = 'A' THEN sales ELSE 0 END) AS 'A Sales', SUM(CASE WHEN product = 'B' THEN sales ELSE 0 END) AS 'B Sales', SUM(CASE WHEN product = 'C' THEN sales ELSE 0 END) AS 'C Sales'
FROM sales_table
GROUP BY department;
```
以上语句会将销售表按照部门分组,并计算出A、B、C三个产品的销售额,其中如果某个部门没有销售某个产品,则该产品的销售额为0。
相比之下,SUM CASE WHEN语句是将条件放在了聚合函数SUM内部,使用方式更加简单,适用于不需要按条件分组计算的情况。例如,我们可以使用以下语句计算所有订单的总销售额:
```
SELECT SUM(CASE WHEN status = 'paid' THEN total_price ELSE 0 END) AS 'Paid Sales',
SUM(CASE WHEN status = 'unpaid' THEN total_price ELSE 0 END) AS 'Unpaid Sales'
FROM orders_table;
```
以上语句会将所有订单按照是否支付完成分为两组,并计算出已支付和未支付订单的总销售额。
阅读全文