Форум: "Базы";
Текущий архив: 2011.03.06;
Скачать: [xml.tar.bz2];
ВнизSQL getdate Найти похожие ветки
← →
Ksandr (2009-09-25 15:40) [0]Всем привет..Подскажите плиз
Обращаюсь к SQL вытаскиваю данные например за вчерашний пириод ну т.е. пишут getdate()-1 да все впорядке он обращается к вчерашнему числу но и часы митнуты и секунды он показывает тоже getdate... поскажите как сделать так что бы он брал вчерашнее число но 00:00 часов...
Спасибо....
← →
Thrashead (2009-09-25 16:08) [1]select trunc(getdate-1)
?
← →
Ksandr (2009-09-25 16:13) [2]ок поподробнее
use uslugi
set dateformat dmy
SELECT I.NZ,
A.UKI + " " + LTRIM(STR(A.ND)) + A.KI AS Adr,I.KV,
Otdel.otdel,
Otdel.Org,
I.DO,
I.DR,
I.DPR,
I.DFR,
i.drp,
i.dv,
VI.N,
VSrok.N,
i.p
FROM (select * from dbo.info_arhiv union select * from dbo.info) I LEFT JOIN
dbo.VSrok ON I.VS = VSrok.K LEFT JOIN
dbo.VInfo VI ON I.VI = VI.K LEFT Join
dbo.Otdel ON I.I = Otdel.P LEFT Join
SprAdr.dbo.ActualAdr A ON A.D1 = I.D1 AND A.D2 = I.D2
where do>getdate()-1 показывает мне показывает мне данные которые он взял с 24/09/2009 16:16:16 а мне надо чтобы он показывал с 24/09/2009 00:00:00
← →
turbouser © (2009-09-25 17:36) [3]
> Ksandr (25.09.09 16:13) [2]cast(cast(GETDATE()-1 as date) as smalldatetime)
← →
Ksandr (2009-09-28 11:02) [4]Неа... ошибку выдает....
Server: Msg 243, Level 16, State 1, Line 3
Type date is not a defined system type.
← →
Sergey13 © (2009-09-28 11:20) [5]> [4] Ksandr (28.09.09 11:02)
А так?cast(cast(GETDATE()-1 as integer) as datetime)
← →
Ksandr (2009-09-28 13:25) [6]
> А так?
> cast(cast(GETDATE()-1 as integer) as datetime)
Работает но но часы минуты секунды все равно берет реального времени....
← →
Sergey13 © (2009-09-28 13:40) [7]Наш мускулист говорит что делает так
DATE_FORMAT( Now( ) , "%Y-%m-%d" )
или так
cast( Now( ) AS DATE )
cast( Now( ) - INTERVAL 1 DAY AS DATE )
← →
Ksandr (2009-09-28 14:39) [8]вот я лопата, простите а то взбудоражил всех У меня не mySQL а просто SQL. Microsoft SQL
На него мне нужна команда если у кого есть выручайте....
← →
Sergey13 © (2009-09-28 15:32) [9]> [8] Ksandr (28.09.09 14:39)
Да уж...
Вот так в принципе должно сработать.
select cast(cast(GETDATE()-0.5-1 as integer) as datetime)
-0.5 - для правильного округления.
Или на клиенте в конце концов сформируй и передай в запрос как параметр.
> например за вчерашний пириод
Только не забудь, что это будет не вчерашний "пириод", а начиная с вчерашнего дня. Это разные вещи.
← →
Вариант (2009-09-28 15:42) [10]
> Ksandr (28.09.09 13:25) [6]
возможен вариант
select cast(floor(cast(getdate()-1 as float)) as datetime)
← →
Ksandr (2009-09-28 15:45) [11]
> Вот так в принципе должно сработать.
> select cast(cast(GETDATE()-0.5-1 as integer) as datetime)
Отлично спасибо Все шикарно все работает.... Супер я безумно рад Огромное спасибо....))))))))))))))))
← →
b z (2009-09-28 18:05) [12]Вариантов много, мне симпатичнее :) такой:
SELECT DATEADD(DAY, -1, DATEDIFF(DAY, 0, GETDATE()))
Страницы: 1 вся ветка
Форум: "Базы";
Текущий архив: 2011.03.06;
Скачать: [xml.tar.bz2];
Память: 0.47 MB
Время: 0.003 c