运行INSERT语句,并将日期与表名称连接起来



是否可以运行一个查询,将日期连接到表中以获得所需的表?

例如:

INSERT INTO schema.table_ || replace(cast(now()::date  AS varchar), '-', '_') ||
(row,id,value,date) VALUES
...;

我尝试访问的表名是table_2020_12_14?

不,这是不可能的。您必须首先将语句生成为字符串,然后执行它。一种方法是使用EXECUTE在PL/pgSQL中执行动态SQL。

如果这是一个表分区,那么该练习是不必要的,您可以直接插入到已分区的表中。

最新更新