代码之家  ›  专栏  ›  技术社区  ›  script

编写一个查询,以根据max获得完整的记录

  •  2
  • script  · 技术社区  · 8 年前

    在里面 Ecto.Query.Api 我们使用 max select 要在如下字段中获取最大值:

    from q in jobs,
    select: max(q.cost)
    

    它将返回 最大值 字段中的值。

    如果我想返回该最大值的完整记录。我必须使用 where 选择 .

    那么我如何使用 最大值 在哪里?

    所以在我看来我必须使用 fragment 哪里 .

    那么,最好的解决方案是什么?

    谢谢

    1 回复  |  直到 8 年前
        1
  •  4
  •   Aleksei Matiushkin    8 年前

    而我们可以使用一个过度复杂的 where 子句中,真正的任务实际上是在表按排序时获取最顶层的记录 cost :

    from q in jobs,
    order_by: [desc: q.cost],
    limit: 1