【发布时间】:2015-12-01 04:04:50
【问题描述】:
感谢您的宝贵时间:
我有一组记录(具体是用户),其 Hstore 哈希保存在“数据”字段中。问题是我想创建一个 SQL 来从该组用户中获取用户,并在该“数据”字段中使用 hash hstore 保存的属性匹配另一个字符串值数组,如下所示:
数据:{ "foo" => "", "bar" => "bars", "baz" => "bazz" }
要匹配的字符串数组 ["foos", "bazz"]
注意:我想匹配值,而不是键
每个用户都有一组“数据”foo/bar/bas 属性,我从哈希中发送一个“键”数组以提取并与第二个“值”数组进行比较,但我似乎无法做出单个 SQL 匹配。到目前为止,这就是我所拥有的:
keys = ["foo", "baz"]
values_to_match = ["bars", "bazz"]
users.where("users.data -> ARRAY[?] ILIKE ANY (ARRAY[?])", keys, values_to_match)
【问题讨论】:
标签: ruby-on-rails arrays postgresql hstore