我是bloom索引的新手,目前我的表在WHERE
子句中的同一列有3个部分索引,并且同一个表有不同的列组合。我试图用 1 个bloom index 替换它们。
WHERE
但是,当我使用以下语法创建带有子句的bloom索引时,出现以下错误:
CREATE EXTENSION bloom;
CREATE INDEX idx_bloom_bar ON message USING bloom
(s, p, c, m, e, id)
WHERE (islatest = true)
WITH (length=56, col1=4, col2=4, col3=4, col4=4, col5=4, col6=4);
SQL Error [42601]: ERROR: syntax error at or near "WITH" Position: 165
但是,如果没有WHERE
子句,我可以成功创建此索引。
请让我知道我们是否可以将它们用作多个部分索引的替换或不减少我表上的索引数量。
在CREATE INDEX 语法中 WITH 子句位于 WHERE 子句之前。您不能像在此处尝试的那样自由地重新排列订单。
这种排序对我来说有点不直观,但这就是它的工作原理。