当前时区为 UTC + 8 小时



发表新帖 回复这个主题  [ 4 篇帖子 ] 
作者 内容
1 楼 
 文章标题 : 求助一个有判断条件的更新语句
帖子发表于 : 2011-06-04 19:06 

注册: 2009-01-08 18:53
帖子: 50
送出感谢: 1
接收感谢: 0 次
假设表里有两个日期类型的字段,其中一个为null, 要根据是否为null更新其中的一个,使用如下语句
->update table1 set case
->when col1 is null then col1
->when col2 is nul then col2
->end =curdate()
->where condition = ...
执行不成功,请指教错误。


页首
 用户资料  
 
2 楼 
 文章标题 : Re: 求助一个有判断条件的更新语句
帖子发表于 : 2011-08-14 12:24 
头像

注册: 2007-11-29 15:52
帖子: 5
送出感谢: 0 次
接收感谢: 0 次
一个例子:UPDATE ”order” SET process_status=(case WHEN process_status=’正常’ then ‘加急’ else ‘正常’ end) WHERE order_id=16;

参考:这里


页首
 用户资料  
 
3 楼 
 文章标题 : Re: 求助一个有判断条件的更新语句
帖子发表于 : 2011-08-26 20:13 
头像

注册: 2009-04-01 9:32
帖子: 12
送出感谢: 0 次
接收感谢: 0 次
写二个SQL更新
update table1 set col1=curdate() where col1 is null and condition = ...

update table1 set col2=curdate() where col2 is null and condition = ...


_________________
行为变为习惯,习惯养成性格,性格决定命运


页首
 用户资料  
 
4 楼 
 文章标题 : Re: 求助一个有判断条件的更新语句
帖子发表于 : 2011-08-26 20:16 
头像

注册: 2009-04-01 9:32
帖子: 12
送出感谢: 0 次
接收感谢: 0 次
一起更新也可以
update table1
set col1=nvl(col1,curdate()),
col2=nvl(col2,curdate())
where condition = ...


_________________
行为变为习惯,习惯养成性格,性格决定命运


页首
 用户资料  
 
显示帖子 :  排序  
发表新帖 回复这个主题  [ 4 篇帖子 ] 

当前时区为 UTC + 8 小时


在线用户

正在浏览此版面的用户:没有注册用户 和 1 位游客


不能 在这个版面发表主题
不能 在这个版面回复主题
不能 在这个版面编辑帖子
不能 在这个版面删除帖子
不能 在这个版面提交附件

前往 :  
本站点为公益性站点,用于推广开源自由软件,由 DiaHosting VPSBudgetVM VPS 提供服务。
我们认为:软件应可免费取得,软件工具在各种语言环境下皆可使用,且不会有任何功能上的差异;
人们应有定制和修改软件的自由,且方式不受限制,只要他们自认为合适。

Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
简体中文语系由 王笑宇 翻译