Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Трункануть дату/время в дату на ноль часов ноль минут [MSSQL]


Медвежонок Пятачок ©   (2008-09-02 17:06:00) 

кроме как  :
cast(cast(getdate() as int) as datetime),

есть там еще что-нибудь навроде ораклового trunc()?


Медвежонок Пятачок   (2008-09-03 16:26:00) [1]

странно что эта хрень работает и без одбс в ADO.Net через натив клиента
и в d7 через ado + oledb


DiamondShark   (2008-09-03 14:53:00) [2]


> А вот еще объясните плиз откуда ноги растут у такой конструкции
> (аналог NVL оракла):{fn ifnull(something, something_not_null)}

Из ODBC ноги растут. Это escape sequence, которую ODBC-драйвер переведёт в родной синтаксис.

Типа, такой механизм кроссплатформенности, заложенный в спецификацию ODBC.


Anatoly Podgoretsky   (2008-09-03 11:03:00) [3]

> sniknik  (03.09.2008 10:39:09)  [9]

В частном случае, как раз получится два параметра, nul + not null
IsNull это изобретение Микрософт, не стандартное.


sniknik   (2008-09-03 10:39:00) [4]

> Может кто то сдуру написал аналог COALESCE
не, COALESCE более развернутая функция не ограничивается 2мя параметрами, а тут полный аналог isNull. ради одной буквы...

p.s. ключница водку делала. © Иван Васильевич меняет профессию.


Anatoly Podgoretsky   (2008-09-03 09:56:00) [5]

> Медвежонок Пятачок  (03.09.2008 9:28:07)  [7]

Может кто то сдуру написал аналог COALESCE


Медвежонок Пятачок   (2008-09-03 09:28:00) [6]

Понял сенкс.
А вот еще объясните плиз откуда ноги растут у такой конструкции (аналог NVL оракла):

{fn ifnull(something, something_not_null)}

в bol не нашел ни намека на это

ps: sql2005


stas   (2008-09-03 09:02:00) [7]

Самый нормальный вариант
Ega23 ©   (02.09.08 20:07) [1]


Sergey13   (2008-09-03 08:35:00) [8]

Наверное я поторопился. 8-)


Sergey13   (2008-09-03 08:33:00) [9]

DATEPART


Johnmen   (2008-09-02 22:10:00) [10]

поправка
http://sql.ru/forum/actualthread.aspx?tid=552205


Johnmen   (2008-09-02 22:08:00) [11]

http://www.sql.ru/faq/faq_topic.aspx?fid=110
http://sql.ru/forum/actualthread.aspx?tid=501587


Ega23   (2008-09-02 20:07:00) [12]


> cast(cast(getdate() as int) as datetime),


Так не всегда сработает. datetime в tsql это не tdatetime в delphi.

cast(Floor(cast(@DateTime as numeric(18,12))) as datetime)


Наверх

Титульная страница Поиск, карта сайта Написать письмо