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