欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

oracle 复制列值、置空列值

程序员文章站 2024-03-12 20:32:26
...
oracle表中把一个列的值复制成另一个列的值
oracle语法 update 表名 set 列名 = 列名,实际测试
update users a set a.name=a.fax

以上语句的意思就是:把users表中的fax列值赋给name列

oracle表中把一列的值改变部分值赋给另一个列的值:
sql语句
update users a set a.firstdate=add_months

(a.enddate,360);

以上语句的作用:就是enddate加上30年赋给firstdate

oracle把一列置空的语句
update users set 列名=null


oracle修改列值,需要判断时候,需要用decode函数
update users a set a.status= decode(a.enddate,null,1,2);

这个语句的作用:就是加入users表中enddate列如果没有值把users表中status值设为1,如果有值把users表中status值设为2

oracle修改列值,需要两个列进行比较,然后再赋值,需要用case when语句
sql语句
update users a set a.status= (case when (a.A列名>a.B列名) then 1 else 2 end);

这个语句就是假如A列名大于B列名时,把users表中status改为1,若不是这样则为2.