2023年8月3日发(作者:)
sql的update语句批量更新某字段UPDATE TABLE t1 SET 1=
(SELECT code1 FROM TABLE2 t2 WHERE 2=2) -------条件,T1表的code1是T2表中的code1时WHERE EXISTS( SELECT T1中需要插⼊的存在于T2的字段 FROM TABLE2 t2 WHERE 2=2)
Mysql:1 有时候要实现字段的批量替换update 表名 set 字段A = replace(字段A ,"png","jpg" );
2 批量拼接字符串到某字段update 表名 set 字段A = CONCAT( 字段A , "xxx" );update 表名 set 字段A = CONCAT( "yyy" , 字段A , "xxx" );
3 批量截取某字段,扔掉开始的4个字符update 表名 set 字段A=SUBSTR(字段A,4);
4 批量截取某字段,保留结尾的3个字符update 表名 set 字段A=SUBSTR(字段A,-3);
5 批量截取某字段,去掉结尾的2个字符update 表名 set 字段A=SUBSTR(字段A,1,LENGTH(字段A)-2);
更详细的⽅法请参考MYSQL的SUBSTR函数
------------update+select----------------------------------以下是互联⽹收集,⽤的时候再仔细验证/* 多表关联update的时候,记得要加exists()条件,否则不满⾜条件的记录被update称NULL: ⽐如:stu表存在,但stu1表不存在的数据,对应的字段会被updat成NULL;*/6 多表关联update单字段update stu t set = (select from stu1 t1 where = )where exists(select 1 from stu1 t2 where = );7 多表关联update多字段update stu t set (, ) = (select , from stu1 t1 where = )where exists(select 1 from stu1 t2 where = );
UPDATE table1 aliasSET (column_name,column_name ) = (SELECT (column_name, column_name)FROM table2WHERE column_name = _name)WHERE column_name = VALUE
2023年8月3日发(作者:)
sql的update语句批量更新某字段UPDATE TABLE t1 SET 1=
(SELECT code1 FROM TABLE2 t2 WHERE 2=2) -------条件,T1表的code1是T2表中的code1时WHERE EXISTS( SELECT T1中需要插⼊的存在于T2的字段 FROM TABLE2 t2 WHERE 2=2)
Mysql:1 有时候要实现字段的批量替换update 表名 set 字段A = replace(字段A ,"png","jpg" );
2 批量拼接字符串到某字段update 表名 set 字段A = CONCAT( 字段A , "xxx" );update 表名 set 字段A = CONCAT( "yyy" , 字段A , "xxx" );
3 批量截取某字段,扔掉开始的4个字符update 表名 set 字段A=SUBSTR(字段A,4);
4 批量截取某字段,保留结尾的3个字符update 表名 set 字段A=SUBSTR(字段A,-3);
5 批量截取某字段,去掉结尾的2个字符update 表名 set 字段A=SUBSTR(字段A,1,LENGTH(字段A)-2);
更详细的⽅法请参考MYSQL的SUBSTR函数
------------update+select----------------------------------以下是互联⽹收集,⽤的时候再仔细验证/* 多表关联update的时候,记得要加exists()条件,否则不满⾜条件的记录被update称NULL: ⽐如:stu表存在,但stu1表不存在的数据,对应的字段会被updat成NULL;*/6 多表关联update单字段update stu t set = (select from stu1 t1 where = )where exists(select 1 from stu1 t2 where = );7 多表关联update多字段update stu t set (, ) = (select , from stu1 t1 where = )where exists(select 1 from stu1 t2 where = );
UPDATE table1 aliasSET (column_name,column_name ) = (SELECT (column_name, column_name)FROM table2WHERE column_name = _name)WHERE column_name = VALUE
发布评论