Форматы времени

Microsoft SQL Server 2005 распознает следующие форматы для данных времени. Формат должен быть заключен в одинарные кавычки ('):

14:30
14:30[:20:999]
14:30[:20.9]
4am
4 PM
[0]4[:30:20:500]AM
SELECT CAST('01/01/2000 14:30' AS datetime)
    --2000-01-01 14:30:00.000
SELECT CAST('01/01/2000 14:30:20:999' AS datetime)
    --2000-01-01 14:30:21.000
SELECT CAST('01/01/2000 14:30:20.9' AS datetime)
    --2000-01-01 14:30:20.900
SELECT CAST('01/01/2000 4am' AS datetime)
    --2000-01-01 04:00:00.000
SELECT CAST('01/01/2000 4 PM' AS datetime)
    --2000-01-01 16:00:00.000
SELECT CAST('01/01/2000 04:30:20:500AM' AS datetime)
    --2000-01-01 04:30:20.500
SELECT CAST('01/01/2000 04:30:20:500 AM' AS datetime)
    --2000-01-01 04:30:20.500

Для указания времени до или после 12 часов дня можно использовать суффиксы «АМ» и «РМ». Регистр символов в них не учитывается.

Часы могут быть указаны исходя из 12- или 24-часовых суток. Значения часов интерпретируются следующим образом.

  • Значение часа 0 представляет час после полуночи («АМ») независимо от того, указано «АМ» или нет. Если значение часа равно 0, то «PM» указывать нельзя.
  • Значения часа от 1 до 11 представляют часы до полудня, если не задан параметр «AM» или «PM». Если задан параметр «AM», то эти значения так же представляют часы до полудня. Если указано «PM», то эти значения указывают на часы после полудня.
  • Значение 12 представляет час, начавшийся в полдень, если не указано «PM» или «AM». Если указано «AM», это значение представляет час, начавшийся в полночь. Если указано «PM», то это значение представляет час, начавшийся в полдень. Например: 12:01 — это 1 минута после полудня, так же как и 12:01 PM, тогда как 12:01 AM — это 1 минута после полуночи. 12:01 АМ аналогично указанию 00:01 или 00:01 AM.
  • Значения часов от 13 до 23 представляют часы после полудня, если не указано «AM» или «PM». Если задан параметр «PM», то эти значения также представляют часы после полудня. Если час принимает значение от 13 до 23, то указывать «AM» нельзя.
  • Нельзя указывать значение часа 24. Для обозначения полночи пользуйтесь значением 12:00 АМ или 00:00.

Миллисекундам может предшествовать либо двоеточие (:), либо точка (.). Число после двоеточия обозначает тысячные доли секунды. При использовании точки однозначное число обозначает десятые доли секунды, двузначное число — сотые, а трехзначное — тысячные доли секунды. Например: 12:30:20:1 означает 20 и одну тысячную долю секунды после 12:30, 12:30:20.1 означает 20 и одну десятую секунды после 12:30.

См. также

Основные понятия

Использование данных даты и времени

Другие ресурсы

Дата и время (Transact-SQL)

Справка и поддержка

Получение помощи по SQL Server 2005