Postgres使用格式()

时间:2016-08-29 10:51:58

标签: sql postgresql format plpgsql

在这种情况下,format()的使用是否通常可以互换?

exec_str := format('UPDATE ' || TG_ARGV[0] || 
                    ' SET username = current_user,
                              time = current_timestamp::timestamp(0);'
                  );
EXECUTE exec_str;

VS

exec_str := 'UPDATE ' || TG_ARGV[0] || 
                    ' SET username = current_user,
                              time = current_timestamp::timestamp(0);'
                  ;
EXECUTE format(exec_str);

1 个答案:

答案 0 :(得分:2)

函数format()的主要好处是您可以使用参数:

execute format('
    UPDATE %I 
    SET username = current_user,
        time = current_timestamp::timestamp(0);',
    TG_ARGV[0]);

the documentation中阅读更多内容。