最近遇到個需求,需要將數據庫中一個字段設置爲按給定的規則遞增,比如下圖:
現在要將 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使用。