sjs*_*jsc 4 ruby postgresql ruby-on-rails-3 hstore jsonb
对于PostgreSQL数据库中的hstore列,我知道我可以在Ruby on Rails中使用类似的"LIKE"查询来搜索包含某个字符串的名称:
Product.where("hstore_data -> 'author' LIKE '%billy%'")
Run Code Online (Sandbox Code Playgroud)
我尝试了jsonb列类型,但得到了这个错误:
ActiveRecord :: StatementInvalid:PG :: UndefinedFunction:ERROR:运算符不存在:jsonb ~~ unknown
HINT:没有运算符匹配给定的名称和参数类型.您可能需要添加显式类型转换.:SELECT"products".*FROM"products"WHERE(jsonb_data - >'author'LIKE'%billy%')
有没有办法正确使用"LIKE"的jsonb列类型?
你可以试试这个
希望你有
product.jsonb_data = {
author: "billynando"
}
Run Code Online (Sandbox Code Playgroud)
然后
Product.where("jsonb_data ->> :key LIKE :value",
key: "author", value: "%billy%"
)
Run Code Online (Sandbox Code Playgroud)
更多这里
| 归档时间: |
|
| 查看次数: |
1393 次 |
| 最近记录: |