是否可以使用Ecto查询来计算两个naive_datetime列之间的总秒数?
在下面的示例中,selected_items
中每一项的运行时间是created_at
和completed_at
之间的秒数。
我想创建一个查询,返回selected_items
中所有记录的总运行时间。
total_seconds = Repo.one(from item in selected_items,
select: sum(***Seconds between item.completed_at and item.created_at***)
发布于 2018-08-30 13:30:54
您可以使用Ecto.Query.dynamic/2
select = dynamic([item], item.completed_at - item.created_at)
from item in selected_items, select: sum(^select)
发布于 2018-08-30 18:01:15
我能够使用片段获得我所需要的东西。
total_seconds = Repo.one(from item in selected_items,
select: sum(fragment("? - ?", item.completed_at, item.created_at))
https://stackoverflow.com/questions/52084707
复制相似问题