PostgreSQL查询用于更新具有它的模式中的所有表中的相同列

时间:2017-07-15 05:03:13

标签: postgresql

我在模式icmdb2admin中有10个表每个表有一个名为pdfname的列我需要在一个循环查询中用所有表的L1.pdfname.V1更新pdfname列中的值

DECLARE
    i record;
BEGIN
    FOR i IN SELECT 'icmdb2admin.' || tablename as tbp  
             FROM pg_tables 
             WHERE schemaname = 'icmdb2admin' 
               and tablename <> 'department_master' 
               and tablename <> 'year'
               and tablename <> 'user_login' 
               and tablename <> 'filetype'  
               -- and other conditions, if needed
 LOOP 
     EXECUTE  UPDATE 'i.tbp' SET "pdfname" = 'L1.'|| pdfname || '.V1'; 
END LOOP;
END;

0 个答案:

没有答案