sqlupdatewhereand
发布时间: 2024-05-04 13:55:47
① Oracle sql 鍙栫郴缁熸椂闂村啀锷8灏忔椂闂棰
select sysdate,sysdate +1,sysdate + 1/24,sysdate + 1/24/60
from al; 鐪嬬粨鏋滃仛阃傚綋璋冩暣
② SQL 批量更新语句
1.使用存储过程
2.在程序代码里逐条循环执行
这里给出一种更高效、简洁的做法,批量更新SQL ,一句SQL就可以替代麻烦的循环过程,有MS SQLServer、Oracle、DB2下的写法
--关键点:t4和t1是同一个table,primary key肯定也是同一个,
--并以它进行关联,这样在 select语句里即可引用到要update的表的fields
UPDATETable1ASt1
SET(Field1,Field2)=(SELECTField21,Field22
FROMTable2t2
INNERJOINTable3t3
ONt3.Field31=t2.Field23
INNERJOINTable4t4
ONt3.Field32=t4.Filed41
WHEREt2.Field24>=''
ANDt1.fId=t4.fId);
----------------------------MSSQLServer-----------------------------------
UPDATEt1
SETField1=Field21,Field2=Field22
FROMTable2t2
INNERJOINTable3t3
ONt3.Field31=t2.Field23
INNERJOINTable4t4
ONt3.Field32=t4.Filed41
WHERE((t2.Field24>='')
ANDt1.fId=t4.fId);
③ SQL语句修改数据库中某列的值。
首先写一个函数:函数功能,传进来一个字符串,变小写,从左到右循环,每循环两次的时候,插入一个冒号,+1后再循环。以此类推。
这一套下来之后,结尾会多出一个冒号,记得用left干掉最后一位。
返回处理完的字符串
函数完毕
最后执行sql
update 表 set 字段=函数(字段) where 条件
热点内容