2016-05-24 2 views
1

Как перевести этот SQL в эктопаразитицид запросКак перевести этот SQL в ecto-запрос?

SELECT * 
FROM table_name 
WHERE table_name.the_date > DATE_SUB(NOW(), INTERVAL 1 DAY) 

без использования фрагмента.

Это работает для меня, но мне интересно, есть ли идиоматический способ ecto для выполнения такого рода запросов.

iex(22)> query = from n in Table, 
...(22)> where: fragment("updatedAt > DATE_SUB(now(), INTERVAL 1 DAY)"), 
...(22)> select: n; 

ответ

4

Вы можете переписать его следующим образом:

from t in Table, 
where: t.updatedAt > datetime_add(^Ecto.DateTime.utc, -1, "day") 

Документов являются here

Смежные вопросы