欢迎来到Doc100.Net免费学习资源知识分享平台!
您的位置:首页 > 程序异常 >

求一条sql语句更新某一已存在内容的字段,新内容加在原有内容后,之间用|隔开,怎么写?多谢

更新时间: 2014-01-05 02:12:45 责任编辑: Author_N1

 

求一条sql语句更新某一已存在内容的字段,新内容加在原有内容后,之间用|隔开,如何写?谢谢
    表t1,内有字段id(关键字),需更新的字段aName,aName原来可能为空,也可能有内容,如果为空,可以用以下语句实现:"UPDATE t SET AName='" + a_Name + "' WHERE ID='" + _id + "'";如果不为空时,需将新增加的内容加在aName后面,之间用|隔开,现求一语句能同时实现aName原来可能为空,也可能有内容两种情况的。
     如果用其他方法,我也可以实现,如,先查询aName是否为空,为空则直接更新,否则将取出的aName再与加入的内容组合(中间加|),再更新即可。
     现在想求一精炼语句,能同时实现aName原来可能为空,也可能有内容两种情况的。请大虾指点,谢谢

--参考方法--
NVL2 (expr1, expr2, expr3) ->expr1不为NULL,返回expr2;为NULL,返回expr3。expr2和expr3类型不同的话,expr3会转换为expr2的类型
--参考方法--

update  t set AName = case when AName is null then '" + a_Name + "' else AName 
--参考方法--
'
--参考方法--
'
--参考方法--
 '" + a_Name + "' where id ='" + _id + "'";

--参考方法--
引用:
自己解决了,但是不是很完美,update  t set AName = AName 
--参考方法--
 "
--参考方法--
'" + a_Name + ''' + where id ='" + _id + "' ,当字段为空时,前面会多一个“
--参考方法--
”,怎么去掉呢?



substr() 处理下即可
--参考方法--
上面错了


"update t 
set aname = decode(aname ,null,'" + a_Name + "',aname 
--参考方法--
'
--参考方法--
'
--参考方法--
'" + a_Name + "')
WHERE ID='" + _id + "'";
上一篇:上一篇
下一篇:下一篇

 

随机推荐程序问答结果

 

 

如对文章有任何疑问请提交到问题反馈,或者您对内容不满意,请您反馈给我们DOC100.NET论坛发贴求解。
DOC100.NET资源网,机器学习分类整理更新日期::2014-01-05 02:12:45
如需转载,请注明文章出处和来源网址:http://www.doc100.net/bugs/t/7019/
本文WWW.DOC100.NET DOC100.NET版权所有。