pgsql使用Do$$语句判断表中数据某个字段里是不是包含固定值,先把原来的值去除最后一个字符后,并给其原来的值拼接赋值
轮询查询,并修改
可重复执行
// pgsql使用Do$$语句判断表中数据某个字段里是不是包含固定值,先把原来的值去除最后一个字符后,并给其原来的值拼接赋值
//column_name NOT LIKE '%123%' 是为了脚本可重复执行
DO $$
DECLARE
v_row RECORD;
BEGIN
FOR v_row IN SELECT * FROM table_name WHERE column_name LIKE '%xxx%' and column_name NOT LIKE '%123%' LOOP
v_row.column_name := substring(v_row.column_name::text from 1 for length(v_row.column_name::text) - 1) || '123';
UPDATE table_name SET column_name = v_row.column_name WHERE ctid = v_row.ctid;
END LOOP;
END $$;