xhe*_*x14 2 sql arrays postgresql ruby-on-rails
我有一个表格,其中包含整数数组类型的列.给定一个整数作为输入,我想查询名为tipo_propiedad的列包含输入整数的行.直接在Postgres中,可以使用&&运算符并将输入int转换为数组.问题是使用这个:
Zone.where("tipo_propiedad && ?", [].push(type)).count
Run Code Online (Sandbox Code Playgroud)
其中type是输入整数,给出
SELECT COUNT(*)FROM"zonas"WHERE(tipo_propiedad && 1)PG :: UndefinedFunction:ERROR:operator不存在:integer [] && integer
我也尝试过
Zone.where("tipo_propiedad && ?", [5].push(type))
Run Code Online (Sandbox Code Playgroud)
因为tipo_propiedad里面只有1,2或3个而且给出了
SELECT COUNT(*)FROM"zonas"WHERE(tipo_propiedad && 5,1)PG :: UndefinedFunction:ERROR:operator不存在:integer [] && integer
我也在使用squeel但是gem没有任何操作符来执行此操作.
你也可以
Zone.where("'?' = ANY (tipo_propiedad)", 1)
Run Code Online (Sandbox Code Playgroud)
要么
Zone.where("tipo_propiedad && ARRAY[?]", 1)
# or "&& '{?}'"
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1260 次 |
| 最近记录: |