如何从jsonb存储的字段中“选择”一个值?
例如
@model1:
data: {"special_date" => "Wed, 16 Mar 2016 11:20:20 -0700", ....}
@model2:
data: {"special_date" => "Wed, 23 Mar 2016 11:20:20 -0700", ....}
我想要的是
Model.all.select("data -> 'special_date'")
如何从jsonb存储的字段中“选择”一个值?
例如
@model1:
data: {"special_date" => "Wed, 16 Mar 2016 11:20:20 -0700", ....}
@model2:
data: {"special_date" => "Wed, 23 Mar 2016 11:20:20 -0700", ....}
我想要的是
Model.all.select("data -> 'special_date'")
2条答案
按热度按时间iqjalb3h1#
如果你想要一个稀疏的ActiveRecord模型示例来保存数据(而不是数组中的原语),你只需要使用
select
:如果你想从
jsonb
列中获取整个记录以及特定的数据,你可以在select
上进行链接:如果你不需要ActiveRecord示例,并且可以获取数组,只需使用pluck:
gojuced72#
这并不完美,因为它使用了pluck而不是select,但是
或者如果需要多个列
工作。