王志軍*_*王志軍 9 between elixir ecto
我想使用Elixir Ecto中的关键字"between"创建一个SQL.
我知道如何使用创建一个SQL like
where: like(t.descript, ^some_description)
但是,当我尝试以同样的方式做到这一点 like
where: between(t.start_date, ^start_date, ^end_date),
我收到了"无效"错误信息
** (Ecto.Query.CompileError) `between(t.start_date(), ^start_date, ^end_date)` is not a valid query expression.**
Run Code Online (Sandbox Code Playgroud)
我怎么能以正确的方式做到这一点?
提前致谢!!
sha*_*evy 15
我不认为Ecto提供了一个between条款.你可以通过使用来完成你的任务
where: t.start_date >= ^start_date,
where: t.start_date <= ^end_date
Run Code Online (Sandbox Code Playgroud)
小智 8
您可以使用它fragment来执行此操作。
where: fragment("? BETWEEN ? AND ?", t.date, ^start_date, ^end_date)
Run Code Online (Sandbox Code Playgroud)
https://hexdocs.pm/ecto/3.1.4/Ecto.Query.API.html#fragment/1
| 归档时间: |
|
| 查看次数: |
1738 次 |
| 最近记录: |