又一个SQL的简单问题,要分的进来啊

useresu 2007-11-28 09:47:14
我现在的情况是这样的:
表t1中
名称 数量1 数量2 数量差
name num1 num2 result

我现在想实现:
update set result = num1-num2

但是有的数据num2为空 ,导致减出的结果也为空

如何让num2为空时,直接为 result = num1 - 0;
...全文
85 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
bells2003 2007-12-01
  • 打赏
  • 举报
回复
用case(when inNull(num2) then num2=0) 应该也是行的.
starluck 2007-11-29
  • 打赏
  • 举报
回复


update t1 set result = num1 - isNull(num2,0)
liulangnanhai 2007-11-29
  • 打赏
  • 举报
回复
update set result = isnull(num1,0) - isnull(num2 ,0)

在SQL 中, 数值计算的时候, isnull这个函数是必备的.尽量多用,否则在数量大的时候,就很容易出错,找原因时就很难了.
lqiiqqqq 2007-11-29
  • 打赏
  • 举报
回复
update t1
set result = num1 - isnull(num2, 0)
wangxuelid 2007-11-29
  • 打赏
  • 举报
回复
update set result = num1-isnull(num2,0) //num2 设置可以为空
yuehaiyang 2007-11-28
  • 打赏
  • 举报
回复
update set result = num1-ifnull(num2,0)

2,497

社区成员

发帖
与我相关
我的任务
社区描述
Delphi 数据库相关
社区管理员
  • 数据库相关社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧