Ecto查询片段

时间:2019-04-30 13:44:24

标签: jquery elixir ecto

我的管道中有以下查询:

where([e], fragment("?->>? = ?", e.fields, ^field_name, ^field_value))

e在此情况下代表event。片段方法调用的第一个参数是什么?

1 个答案:

答案 0 :(得分:1)

调用Ecto.Query.API.fragment/1的第一个参数是要发送到数据库的片段的模板。

这里是retrieve a JSON object field as text的Postgres函数。就是这样,

fragment("?->>? = ?", e.fields, ^field_name, ^field_value)

字面意思是“其中JSONB字段中名称为field_name的嵌套字段的值等于field_value。”