#postgresql
#postgresql
Вопрос:
Я хочу вернуть все записи, которые введены сегодня, не имеет значения, когда я использую это для вставки
INSERT INTO hangfire.job(stateid, statename, invocationdata, arguments, createdat, expireat, updatecount)
VALUES (44, 'Schedule', 'Test Invocation data', 'Test arguments', now()::timestamp, null, 0);
И используйте это для извлечения данных, но оно ничего не возвращает, только поля
SELECT * From hangfire.job WHERE createdat = now()::timestamp;
Комментарии:
1. Не связано, но:
now()::timestamp
может быть упрощено доlocaltimestamp
Ответ №1:
Временная метка содержит время (как указано в названии), если вы хотите проигнорировать это время, используйте date
:
SELECT *
From hangfire.job
WHERE createdat::date = current_date;
Если у вас есть индекс в createdat, указанный выше, этот индекс использоваться не будет. Если это необходимо по соображениям производительности, используйте условие диапазона:
SELECT *
From hangfire.job
WHERE createdat >= current_date
AND createdat < current_date 1;