ruby-on-rails - 在 Rails 4 中查询 Postgres 数组类型的任何成员

标签 ruby-on-rails arrays postgresql ruby-on-rails-4 activerecord

我到处都看到了 2 个例子

要么

Book.where("'history' = ANY (subjects)")

查询主题数组中具有特定主题的图书

 Book.where("subjects @> ?", '{'history', 'drama'}')

查询subjects数组既有历史又有戏剧的书籍

如何查询具有历史或戏剧或两者的书籍?

最佳答案

目前我正在解决这个问题

query = subject_list.map do |subject|
                "'#{subject}' = ANY(subjects)"
            end.join(" OR ")

Book.where(query)

关于ruby-on-rails - 在 Rails 4 中查询 Postgres 数组类型的任何成员,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29868139/

相关文章:

ruby-on-rails - 如何在没有命名空间的情况下调用 Ruby 类

ruby-on-rails - :confirm in rails not working

c++ - 如何强制 gcc 编译器/链接器从可执行文件中删除未使用的静态数组

python - 如何将颜色图绑定(bind)到数组?

ruby - Rspec 匹配哈希数组

sql - 聚合来自数组列的不同元素的单个数组,不包括 NULL

postgresql - terraform 和 aurora postgresql 的存储类型错误

mysql - 在关系数据库中实现高效的外键

ruby-on-rails - Rails 可以充当在 mysite 上托管域的反向代理吗?

ruby-on-rails - rails3 不会在 lib 中加载我的验证器