我有product_reviews
TABLE product_review
jsonb列。
jsonb column : [{"comment": [{"condition": "Good", "Entered": "true"}], "productid": 321}]
CREATE INDEX idx_product_reviews_product_review ON product_reviews USING gin (CAST (product_review ->> 'productid') AS bigint ) ;
所以当我尝试在这个jsonb列上创建gin索引时,我得到错误。
ERROR: data type bigint has no default operator class for access method "gin"
HINT: You must specify an operator class for the index or define a default operator class for the data type.
我想将productid作为bigint类型值进行索引,因此我可以获得比较此产品的jsonb“comment”值。
答案 0 :(得分:0)
btree_gin https://www.postgresql.org/docs/9.5/btree-gin.html扩展为许多数据类型(包括bigint)提供了gin运算符类。
使用
启用btree_gin扩展后创建索引CREATE EXTENSION btree_gin;