我想在查询列中出现材料平均单价这个列,不过这个列有两种计算方法,如下:
-------------------------------------------------------------------
if 【初始库存数量(kcsl)+入库数量(rksl)-出库数量(cksl)】 <>0 平均单价(pjdj)=【初始库存金额(kcje)+入库金额(rkje)-出库金额(ckje)】/【初始库存数量(kcsl)+入库数量(rksl)-出库数量(cksl)】 if 【初始库存数量(kcsl)+入库数量(rksl)-出库数量(cksl)】=0 平均单价(pjdj)=出库金额(ckje)/出库数量(cksl)
------------------------------------------------------------------- 查询语句 单价有两种计算方法,我该怎么做? select clbhid , kcsl , kcje , rksl , rkje , cksl , ckje ,
pjdj = case when kcsl + rksl - cksl <> 0
then (kcje + rkje - ckje )/(kcsl + rksl - cksl)
else ckje / cksl
end
from temptable 不过却提示:遇到被零除错误。
也不能在后面加上where cksl<>0,因为查询是允许它这个数量为零的。
------------------------------
请问:可以在查询中再加个case吗?判断cksl=0的情况
-------------------------------------------------------------------
if 【初始库存数量(kcsl)+入库数量(rksl)-出库数量(cksl)】 <>0 平均单价(pjdj)=【初始库存金额(kcje)+入库金额(rkje)-出库金额(ckje)】/【初始库存数量(kcsl)+入库数量(rksl)-出库数量(cksl)】 if 【初始库存数量(kcsl)+入库数量(rksl)-出库数量(cksl)】=0 平均单价(pjdj)=出库金额(ckje)/出库数量(cksl)
------------------------------------------------------------------- 查询语句 单价有两种计算方法,我该怎么做? select clbhid , kcsl , kcje , rksl , rkje , cksl , ckje ,
pjdj = case when kcsl + rksl - cksl <> 0
then (kcje + rkje - ckje )/(kcsl + rksl - cksl)
else ckje / cksl
end
from temptable 不过却提示:遇到被零除错误。
也不能在后面加上where cksl<>0,因为查询是允许它这个数量为零的。
------------------------------
请问:可以在查询中再加个case吗?判断cksl=0的情况
解决方案 »
- 请教各位高手,能不能通过sql批量修改存储过程的脚本并生效吗?
- select语句
- 散分!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
- 【新手请教】如何删除一条包含外键关系的记录?
- sql中去重汇总
- MS-SQL Server 2000 如何自动备份?
- 急求一条sql语句,望高手点拨!!
- SQL 求和后 比较大小
- 关于 Select * from table where column not in(...)
- 请教各位在sql server的后台的中间用代码入一行数据
- 请问如何禁止xp_cmdshell啊
- 在SQL语言中,一次要插入多行数据,该怎么插入?
pjdj = case when kcsl + rksl - cksl <> 0 then (kcje + rkje - ckje )/(kcsl + rksl - cksl)
when kcsl + rksl - cksl = 0 and cksl <> 0 then ckje / cksl
end
from temptable