假设我有一个架构
defmodule User do
use MyApp.Web, :model
schema "users" do
field :loved_numbers, {:array, :integer}
end
end
如何使用Ecto.Query
为所有正好有2 loved_numbers
的用户进行搜索?
此查询是否适用于PostgreSQL和MySQL?
答案 0 :(得分:1)
使用PostgreSQL,您可以使用片段:
来使用array_length
函数
from(u in User, where: fragment("array_length(?, 1)", u.loved_numbers) == 2)
(1
用于计算维度,对于一维数组,该值应为1
。)