Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Microsoft SQL Server Новый топик    Ответить
 DATETIME -> dd.mm.yyyy hh:mm:ss  [new]
Mikhail Tchervonenko
Member

Откуда: Münster, Germany
Сообщений: 1738
немецкий формат (114) для CONVERT выводит только дату, а если надо и время. только складывать?
10 май 11, 13:59    [10629131]     Ответить | Цитировать Сообщить модератору
 Re: DATETIME -> dd.mm.yyyy hh:mm:ss  [new]
Гавриленко Сергей Алексеевич
Member

Откуда:
Сообщений: 37254
А в хелпе про функцию convert разве этого нет?
10 май 11, 14:00    [10629141]     Ответить | Цитировать Сообщить модератору
 Re: DATETIME -> dd.mm.yyyy hh:mm:ss  [new]
Mikhail Tchervonenko
Member

Откуда: Münster, Germany
Сообщений: 1738
Гавриленко Сергей Алексеевич,
есть, но вариант такой как мне нужен не описан
потому и спрашиваю, возможено ли простое решение
10 май 11, 14:01    [10629148]     Ответить | Цитировать Сообщить модератору
 Re: DATETIME -> dd.mm.yyyy hh:mm:ss  [new]
Гавриленко Сергей Алексеевич
Member

Откуда:
Сообщений: 37254
Отконвертить дату, отконвертить время и склеить две строки.
10 май 11, 14:03    [10629166]     Ответить | Цитировать Сообщить модератору
 Re: DATETIME -> dd.mm.yyyy hh:mm:ss  [new]
orunbek
Member

Откуда: Гималай
Сообщений: 2101
Mikhail Tchervonenko,

114 или 104?

Если 104, то
PRINT CONVERT(varchar,GETDATE(),104)+' '+CONVERT(varchar,GETDATE(),108)
10 май 11, 14:27    [10629434]     Ответить | Цитировать Сообщить модератору
 Re: DATETIME -> dd.mm.yyyy hh:mm:ss  [new]
Начинающий SQL 2008
Member

Откуда:
Сообщений: 438
select convert(varchar,getdate(),104) +' '+ convert(varchar,getdate(),108) -- Дата + часы + минуты + секунды
10 май 11, 14:28    [10629440]     Ответить | Цитировать Сообщить модератору
 Re: DATETIME -> dd.mm.yyyy hh:mm:ss  [new]
Mikhail Tchervonenko
Member

Откуда: Münster, Germany
Сообщений: 1738
ок, спасибо
простого решения как я понял нет
только склеиванием
10 май 11, 14:30    [10629459]     Ответить | Цитировать Сообщить модератору
 Re: DATETIME -> dd.mm.yyyy hh:mm:ss  [new]
iap
Member

Откуда: Москва
Сообщений: 47144
Mikhail Tchervonenko
ок, спасибо
простого решения как я понял нет
только склеиванием
Да. Невероятно сложное решение.
Можно немного упростить, заменив 108 на 8
10 май 11, 14:32    [10629480]     Ответить | Цитировать Сообщить модератору
 Re: DATETIME -> dd.mm.yyyy hh:mm:ss  [new]
trew
Member

Откуда: Москва
Сообщений: 2646
можно так
SELECT CONVERT(VARCHAR(20), GETDATE(), 120)
7 сен 11, 10:44    [11238877]     Ответить | Цитировать Сообщить модератору
 Re: DATETIME -> dd.mm.yyyy hh:mm:ss  [new]
alexejs
Member

Откуда:
Сообщений: 147
declare @d datetime2(7) = '2011-11-11 11:11:11.1111111'
select format(@d, 'dd.MM.yyyy hh:mm:ss.fffffff')

http://msdn.microsoft.com/en-us/library/hh213505(v=SQL.110).aspx

Сообщение было отредактировано: 7 сен 11, 11:27
7 сен 11, 11:23    [11239215]     Ответить | Цитировать Сообщить модератору
 Re: DATETIME -> dd.mm.yyyy hh:mm:ss  [new]
iap
Member

Откуда: Москва
Сообщений: 47144
alexejs,

второй день не могу понять: зачем давать решение для сервера, которого нет?
7 сен 11, 12:32    [11239895]     Ответить | Цитировать Сообщить модератору
 Re: DATETIME -> dd.mm.yyyy hh:mm:ss  [new]
alexejs
Member

Откуда:
Сообщений: 147
Denali CTP3 доступен всем желающим. Можно скачать и поставить.
К тому же версия SQL Server в вопросе не фигурировала.
7 сен 11, 12:48    [11240035]     Ответить | Цитировать Сообщить модератору
 Re: DATETIME -> dd.mm.yyyy hh:mm:ss  [new]
SomewhereSomehow
Member

Откуда: Moscow
Сообщений: 2480
Блог
iap
alexejs,

второй день не могу понять: зачем давать решение для сервера, которого нет?

Это да...А вот для меня еще загадка, зачем давать решения в теме, где последний ответ аж полгода назад (а то и несколько лет, в соседней теме про XML!)...автору она уже давно неинтересна, или отвечающие думают что автор с каждый день с трепетом обновляет страницу в ожидании ответа?
единственное предположение у меня, ради обогащения базы знаний интернета, чтобы кто-нибудь потом в поиске нашел эту тему и увидел какое-то решение. Но сомнительна мне польза от таких ответов, если тема давно прошла, значит к каким-то результатам там пришли, зачем некропостить...
7 сен 11, 13:14    [11240256]     Ответить | Цитировать Сообщить модератору
 Re: DATETIME -> dd.mm.yyyy hh:mm:ss  [new]
alexejs
Member

Откуда:
Сообщений: 147
От таких ответов 11239995 пользы, понятно, много больше.
7 сен 11, 13:33    [11240408]     Ответить | Цитировать Сообщить модератору
 Re: DATETIME -> dd.mm.yyyy hh:mm:ss  [new]
SomewhereSomehow
Member

Откуда: Moscow
Сообщений: 2480
Блог
alexejs,

Да я не про вас, я про тех кто выискивает и поднимает такие темы...Я тоже хотел по теме отписаться, пока не посмотрел на дату, сильно путает это =)
7 сен 11, 13:38    [11240452]     Ответить | Цитировать Сообщить модератору
 Re: DATETIME -> dd.mm.yyyy hh:mm:ss  [new]
alexejs
Member

Откуда:
Сообщений: 147
Не согласен.
Форматирование дат в T-SQL является актуальной темой, т.к. способы, предлагаемые ф-цией convert, не всегда достаточны, что мы и видим, в частности, в данном треде. Появление ф-ции format сильно выручает.
Если б еще TimeSpan сделали...
7 сен 11, 13:48    [11240542]     Ответить | Цитировать Сообщить модератору
 Re: DATETIME -> dd.mm.yyyy hh:mm:ss  [new]
iap
Member

Откуда: Москва
Сообщений: 47144
alexejs
Denali CTP3 доступен всем желающим. Можно скачать и поставить.
К тому же версия SQL Server в вопросе не фигурировала.
Обычно вопросы задают для серверов, установленных на предприятии (на работе вопрошающего).
Ни одна фирма не установит у себя в качестве продакшн тестовую заготовку для будущего сервера.
Кстати, уже бывали случаи, когда при выходе релиза из него удалялись некоторые фичи (пример: MERGE).
В теме версия не указана, это верно. Но она же никак не может быть бета?
Вы же даёте ответы, даже не называя версию сервера.
Хотя, разумеется, никто не может запретить поступать так и в дальнейшем.
Я ни на чём не настаиваю. Отнюдь! :)

Что касается полезности моего поста, на который Вы изволили сослаться,
то польза от него заключается в том, что автор темы проигнорировал совет (не мой) использовать алиасы.
Я хотел обратить его внимание на исключительную важность этого совета.
7 сен 11, 13:54    [11240582]     Ответить | Цитировать Сообщить модератору
 Re: DATETIME -> dd.mm.yyyy hh:mm:ss  [new]
SomewhereSomehow
Member

Откуда: Moscow
Сообщений: 2480
Блог
alexejs
Не согласен.
Форматирование дат в T-SQL является актуальной темой, т.к. способы, предлагаемые ф-цией convert, не всегда достаточны, что мы и видим, в частности, в данном треде. Появление ф-ции format сильно выручает.
Если б еще TimeSpan сделали...
С чем не согласны-то? С тем что выискивать поисковиком старые темы и отписывать в них это не комильфо (потому что мое утверждение относилось именно к этому)? Ну что ж, значит у нас с вами разный взгляд на предназначение ответов в форуме.
7 сен 11, 14:06    [11240689]     Ответить | Цитировать Сообщить модератору
 Re: DATETIME -> dd.mm.yyyy hh:mm:ss  [new]
alexejs
Member

Откуда:
Сообщений: 147
В моем ответе версия указана (11.0 в ссылке + "Denali" явным текстом, если по ней пройти).
Вопросы на форуме задаются не только по production. Плох тот специалист, который живет только сегодняшним днем. Не говоря уже вчерашним.
Форум должен выполнять не только QFE-, но и образовательную функцию. Если на все вопросы отвечать иди читай BOL, народ перестанет на него ходить.
7 сен 11, 14:41    [11241025]     Ответить | Цитировать Сообщить модератору
 Re: DATETIME -> dd.mm.yyyy hh:mm:ss  [new]
iap
Member

Откуда: Москва
Сообщений: 47144
alexejs
В моем ответе версия указана (11.0 в ссылке + "Denali" явным текстом, если по ней пройти).
Вопросы на форуме задаются не только по production. Плох тот специалист, который живет только сегодняшним днем. Не говоря уже вчерашним.
Форум должен выполнять не только QFE-, но и образовательную функцию. Если на все вопросы отвечать иди читай BOL, народ перестанет на него ходить.
Парсить ссылку, хоть она и явным текстом...
Я считаю, что решения для будущей версии сервера - это интересно.
Собственно, Вам же понятно, что я сразу увидел для какого они сервера :)
Но, может, правильнее писать в таких случаях: дескать, а вот это решение для Denali!
Автор темы же не ожидает такого подвоха!
Это всё, что я хотел сказать. Именно это я и не понимаю, о чём и писал ранее.
7 сен 11, 17:47    [11243114]     Ответить | Цитировать Сообщить модератору
 Re: DATETIME -> dd.mm.yyyy hh:mm:ss  [new]
Shakill
Member

Откуда: мск
Сообщений: 1887
интересно, почему сервер может неявно разбирать форматы даты/времени, которых нет в справочнике стилей CONVERT? например, ISO (ггггммдд) не содержит времени, и для формирования приходится склеивать, но в обратную сторону это работает
DECLARE @dt datetime = '20110901 10:12:24'
. вот в этом странном формате тоже '01.13.2011 10:12:24'
8 сен 11, 17:03    [11249441]     Ответить | Цитировать Сообщить модератору
 Re: DATETIME -> dd.mm.yyyy hh:mm:ss  [new]
iap
Member

Откуда: Москва
Сообщений: 47144
Shakill
интересно, почему сервер может неявно разбирать форматы даты/времени, которых нет в справочнике стилей CONVERT? например, ISO (ггггммдд) не содержит времени, и для формирования приходится склеивать, но в обратную сторону это работает
DECLARE @dt datetime = '20110901 10:12:24'
. вот в этом странном формате тоже '01.13.2011 10:12:24'
Там встроено очень много таких недокументированных "вольностей".
Сервер пытается до последней возможности преобразовать строку в дату-время :)
Например:
DECLARE @dt datetime = '1/2/3'
8 сен 11, 17:14    [11249535]     Ответить | Цитировать Сообщить модератору
Все форумы / Microsoft SQL Server Ответить