weixin_41083434 2023-02-07 11:20 采纳率: 25%
浏览 35
已结题

pgsql物化视图自动增量更新

PgSQL 版本:PostgreSQL 10.19
要求:pgsqL 做物化视图,并且规定每天凌晨1点做自动增量更新

SQL是类似这样的 :

CREATE MATERIALIZED VIEW myview
REFRESH
START WITH DATE_FORMAT(now() + interval 1 day, '%Y-%m-%d 01:00:00')
NEXT DATE_FORMAT(now() + interval 1 day, '%Y-%m-%d 01:00:00')
AS
SELECT count(*) as cnt
FROM goods G
LEFT JOIN catalog C ON G.catalog_id = C.id
WHERE
....
GROUP BY C.id

报错:

img

据说在 PostgreSQL 10.19 中,在 REFRESH 语句之前必须添加 WITH 关键字
SQL改为:

CREATE MATERIALIZED VIEW myview
WITH (
  REFRESH
  START WITH DATE_FORMAT(now() + interval '1 day', '%Y-%m-%d 02:00:00')
  NEXT DATE_FORMAT(now() + interval '1 day', '%Y-%m-%d 02:00:00')
) AS
SELECT count(*) as cnt
FROM goods G
LEFT JOIN catalog C ON G.catalog_id = C.id
WHERE
....
GROUP BY C.id

报错:

img

请大家帮忙看看 到底问题出在哪里?? 谢谢了

  • 写回答

1条回答 默认 最新

  • 「已注销」 2023-02-09 10:14
    关注

    这个问题很简单呀

    评论

报告相同问题?

问题事件

  • 已结题 (查看结题原因) 6月28日
  • 创建了问题 2月7日