Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2011.03.06;
Скачать: CL | DM;

Вниз

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;
Скачать: CL | DM;

Наверх




Память: 0.49 MB
Время: 0.008 c
15-1290872112
Unknown_user
2010-11-27 18:35
2011.03.06
DCC32 и Turbo pascal


2-1292336344
vitge
2010-12-14 17:19
2011.03.06
Закрытие формы из другой формы


15-1290455226
Kerk
2010-11-22 22:47
2011.03.06
Часы


15-1290634183
Юрий
2010-11-25 00:29
2011.03.06
С днем рождения ! 25 ноября 2010 четверг


15-1290288586
Юрий
2010-11-21 00:29
2011.03.06
С днем рождения ! 21 ноября 2010 воскресенье