Вывод записей прошедшего дня
Добавлено: 2009-11-30 9:49:04
Как вывести все записи за прошлый день?
Не так страшен танк, как его пьяный экипаж
https://forum.lissyara.su/
timestamp присутствует в таблице ?Gloft писал(а):Как вывести все записи за прошлый день?
Так а в чем проблема... доки читать иногда надо.Gloft писал(а):да каждой записи соответствует поле с timestamp
Код: Выделить всё
SELECT SOME_COLUMN FROM SOME_TABLE WHERE TIMESTAMP_COLUMN = GETDATE() - 1
Код: Выделить всё
SELECT SOME_COLUMN FROM SOME_TABLE WHERE TIMESTAMP_COLUMN = GETDATE() - 1
Код: Выделить всё
SELECT
SOME_COLUMN
FROM
SOME_TABLE
WHERE
DATEPART(dd, TIMESTAMP_COLUMN) = (SELECT DATEPART(dd, (GETDATE()-1)))
AND
DATEPART(mm, TIMESTAMP_COLUMN) = (SELECT DATEPART(mm, (GETDATE()-1)))
AND
DATEPART(yyyy, TIMESTAMP_COLUMN) = (SELECT DATEPART(yyyy, (GETDATE()-1)))
Ну я для примера привел. Даже вашу существующую запись можно переписать парой разных способов )Gloft писал(а):выше приведенный код не со всем то что нужно как оказалосьКод: Выделить всё
SELECT SOME_COLUMN FROM SOME_TABLE WHERE TIMESTAMP_COLUMN = GETDATE() - 1
он выводит только те сообщения которые были сделаны вчера в тоже время (час:минуты:секунды) что и текущий запрос
вот то как это в итоге работает у меня:Код: Выделить всё
SELECT SOME_COLUMN FROM SOME_TABLE WHERE DATEPART(dd, TIMESTAMP_COLUMN) = (SELECT DATEPART(dd, (GETDATE()-1))) AND DATEPART(mm, TIMESTAMP_COLUMN) = (SELECT DATEPART(mm, (GETDATE()-1))) AND DATEPART(yyyy, TIMESTAMP_COLUMN) = (SELECT DATEPART(yyyy, (GETDATE()-1)))
Код: Выделить всё
declare @dtm datetime
set @dtm = '2009-11-02 01:11:10.290'
select (convert(datetime,convert(varchar,@dtm,1),1))
------------------------------------------------------
2009-11-02 00:00:00.000
(1 row(s) affected)