Я вставил строки с датой UTC в столбец int в моей базе данных. Как я могу получить только те строки, которые были вставлены за последние 24 часа? - PullRequest
0 голосов
/ 17 января 2019

Вот вставка, которую я использовал:

db2.Insert(new QuizHistory()
{
   QuizId = quiz,
   Cards  = 0,
   Points = points,
   UtcNow = (int)Math.Truncate(DateTime.UtcNow.Subtract(new DateTime(1970, 1, 1)).TotalSeconds),
   Viewed = 1,
   Deck   = deck
});

Я пытался взглянуть на различные функции sql, но теперь я запутался как никогда.

select * QuizHistory << but just for the last 24 hours.

1 Ответ

0 голосов
/ 17 января 2019

Поскольку вы сохраняете дату в секундах с 1 января 1970 года, решение будет использовать strftime:

select * 
from QuizHistory
where UtcNow > strftime('%s', 'now', '-1 day')

, т.е. с %s в формате (в секундах с 1970-01-01), для даты now с модификатором -1 дня

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...