加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

ruby sequel gem – 如何使用pg_array扩展名查询数组

发布时间:2020-12-17 02:22:31 所属栏目:百科 来源:网络整理
导读:我正在使用 pg_array扩展和续集版本4.1.1. 我添加了这样的扩展名: Sequel::Database.extension :pg_array 我创建了一个这样的列: alter_table :emails do add_column :references,"text[]",null: trueend 我可以将数组加载和检索到postgress数组列,就像使
我正在使用 pg_array扩展和续集版本4.1.1.

我添加了这样的扩展名:

Sequel::Database.extension :pg_array

我创建了一个这样的列:

alter_table :emails do
  add_column :references,"text[]",null: true
end

我可以将数组加载和检索到postgress数组列,就像使用普通数组一样.

从上面的链接中不清楚的是如何根据此数组列中的值执行查询.

例如,如果电子邮件表中的一行包含引用列中的这些值:

references                             
--------------------------------------------------------------------
 {}
 {5363f773bccf9_32123fe75c45e6f090953@Pauls-MacBook-Pro.local.mail}

如何查询电子邮件表以查找包含上述值的引用数组值的行:

Email.where(references: ????)

解决方法

使用pg_array_ops扩展名:

Sequel.extension :pg_array_ops
Email.where(Sequel.pg_array_op(:references).contains('5363f773bccf9_32123fe75c45e6f090953@Pauls-MacBook-Pro.local.mail'))

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读