如何使用具有指定运算符的现有索引添加排除约束?

How to add an exclude constraint with an existing index with specified operator?

假设索引如下:

CREATE INDEX CONCURRENTLY blocked_date_idx_on_since_until_range
  ON blocked_date
  USING gist(
    tstzrange(
      "blocked_since",
      "blocked_until",
      '[]'
    )
  );

这是 2 个日期的范围,我想:

ALTER TABLE blocked_date
  ADD CONSTRAINT blocked_date_since_until_overlap
  EXCLUDE
    USING INDEX blocked_date_idx_on_since_until_range WITH &&;

此语法无效(我收到错误),但我找不到可以指定在索引上使用哪个运算符的有效语法。 ALTER TABLE 部分的正确语法是什么?

目前没有实现此目的的语法。您需要直接创建约束,不能预先创建索引。