我正在尝试创建一个优化的部分索引来查找数字字段amount
不为零的所有行。
此
CREATE INDEX amount_not_zero_idx ON my_table (amount)
WHERE amount <> 0;
正在运作,但这并不是我想到的,因为只有“不像零”的信息才是重要的。我想做的是像
CREATE INDEX amount_not_zero_idx ON my_table (amount <> 0)
WHERE amount <> 0;
因为它应该提供最佳性能 - 但PostgreSQL为“&lt;&gt;”提供了语法错误。
有什么建议吗?
答案 0 :(得分:0)
自己找到它。问题只是缺少括号,正确的语法是
CREATE INDEX amount_not_zero_idx ON my_table ((amount <> 0))
WHERE amount <> 0;