SQL数据库上的select sum功能如何实现符合条件的不同列数值统计?

2024年11月16日 14:43
有3个网友回答
网友(1):

首先:你这个表结构设计的就太不合理, 数据量大的时候查询将非常耗时耗资源。
你的问题是否可以这样理解?输入一个日期, 将改日期下A B C的数量(如果存在记录)求和输出?但是这样问题就出来了, 也就是说你只能每次查询一个日期下的数量总和, 而不能按日期来汇总数量总和, 所以说设计的结构不合理!

其次:你要的这个功能, 可以实现。
思路:
必定要用拼接语句, 动态查询出所有存在的唯一日期, 逐个日期查询A B C的数量, 求和!这样查询出来的就是按日期汇总的数量了。

不知道你是否理解?

网友(2):

这样
declare @sdate date
select @sdate='2013/9/5'
select SUM(
case when A日期=@sdate then A数量 else 0 end +
case when B日期=@sdate then B数量 else 0 end +
case when C日期=@sdate then C数量 else 0 end
) as 总数
from 表名

祝你成功!

网友(3):

你是想查找A数量+B数量=24的数据吗??