备注:表里肯定有记录,同一StorerKey和Sku下onHoldFlag可能全是0,也可能全是1,也可能又有0又有1,我要统计为0和为1时的总量,没有1时1的量就为0(没有0时0的量为0),都有时各自SUM
解决方案 »
- 如何把SQL 2008的数据库备份文件还原为SQL2000的数据库?
- 求一个SQL语句,谢谢了
- group by 和count()一起用的问题
- 求,怎样把图片插入数据库,包换.inc和.gif等常用格式的图片
- 如何将string类型数据插入到SQL中Varchar(255)中!
- 求SQL语句??
- 如何能在增加字段前先检测字段是否存在 如果不存在就增加 如果存在就不执行
- 有沒有''在字符串中查找特殊字符的位置'' 這樣的函數謝謝
- 如何判断表中那个字段是外键约束,哪个是主键,那个是索引! 很急
- 求问高手!这样的问题用触发器可以解决吗?
- 求救!!!存储过程能不能让access自动压缩,希望有人救一救我!在线等!!!
- 有没有办法不用建表用一条select语句选出1到100这一百个整数?
FROM dbo.inventory_detail
WHERE dbo.inventory_detail.onHoldFlag = 1
GROUP BY dbo.inventory_detail.StorerKey, dbo.inventory_detail.Sku
table dbo.inventory_detail
QTY=(Case when onHoldFlag=0 then 33 else 0 end)
FROM dbo.inventory_detail
33我只是举个例子,表里QTY的值多了。
to quanyi(长生天)
你的方法也不行,查出来一样是没记录。NULL
isnull(SUM(QTY) ,0) AS onhold
FROM dbo.inventory_detail
WHERE dbo.inventory_detail.onHoldFlag = 1
GROUP BY dbo.inventory_detail.StorerKey, dbo.inventory_detail.Sku
你的结果仍然显示不出来,无记录,
再次说明:以上表中的那条记录是我模拟的,只是举个例子。
onhold=sum(Case when onHoldFlag=0 then QTY else 0 end)
FROM dbo.inventory_detail
group by StorerKey, Sku
a.StorerKey,
a.Sku,
SUM(Case when a.onHoldFlag = 1 then a.QTY else 0 end) as onhold,
SUM(Case when a.onHoldFlag = 0 then a.QTY else 0 end) as notonhold
FROM
dbo.inventory_detail a
group by
a.StorerKey,
a.Sku
onhold=sum(Case when onHoldFlag=0 then QTY else 0 end),
FROM dbo.inventory_detail
group by StorerKey, Sku