最近遇到个需求,需要将数据库中一个字段设置为按给定的规则递增,比如下图:
现在要将 dest_name 全部改为class_"班级"#student_"从1递增的序号" 的格式,也就是像第一个的dest_name那样。
最后得到的数据库语句是:
update test set dest_name = 'class_'||class||'#'||(select seq from (select row_number() over(order by id) as seq, id from test) as table2 where table2.id = test.id) ;
红色部分其实就为了产生递增的值,如果不是从1开始,可以在末尾+n, || 是数据库字符连接;
结果如下:
设置变量:
update table_name set value_name= replace(value_name, 'XXX', '***') where value_name2= 'value';
delete from table_name where value_name= 'value';
设置在value_name2 = '7'条件下 所有value_name3以789开头的value_name 为123456
update table_name set value_name= '123456' where value_name2 = '7' and value_name3 like '789%';
注意like使用。