Преобразование времени в 12-часовой формат в SQL - PullRequest
9 голосов
/ 20 января 2011

Как я могу преобразовать 24 форматированное время в 12 форматированное время в SQL Server 2008?

Ответы [ 6 ]

24 голосов
/ 20 января 2011

У вас есть текущее время в переменной / столбце типа time?Если это так, то это просто:

declare @t time
set @t = '14:40'

select CONVERT(varchar(15),@t,100)

результат:

2:40PM

Если он находится в переменной datetime(2), то вам придется вырезать часть даты после выполнения CONVERT .Если это строка, то сначала CONVERT до time, затем используйте приведенный выше код.

7 голосов
/ 05 мая 2011

Иногда вам нужно сделать это в строке:

SELECT CONVERT(varchar(15),  CAST(GETDATE() AS TIME), 100) as AmPmTime
6 голосов
/ 08 марта 2012

Чтобы добавить к комментарию rAdmin, синтаксис:

CONVERT(data_type,expression,style_code)

Вот некоторые другие коды стиля, которые вы можете использовать:

SELECT
GETDATE() AS GetDate,
CONVERT(VARCHAR,GETDATE(),0) AS '0',
CONVERT(VARCHAR,GETDATE(),100) AS '100',
CONVERT(VARCHAR,GETDATE(),1) AS '1',
CONVERT(VARCHAR,GETDATE(),101) AS '101',
CONVERT(VARCHAR,GETDATE(),7) AS '7',
CONVERT(VARCHAR,GETDATE(),107) AS '107',
CONVERT(VARCHAR,GETDATE(),108) AS '108',
CONVERT(VARCHAR,GETDATE(),108) AS '108',
CONVERT(VARCHAR,GETDATE(),10) AS '10',
CONVERT(VARCHAR,GETDATE(),110) AS '110',
CONVERT(VARCHAR,GETDATE(),12) AS '12',
CONVERT(VARCHAR,GETDATE(),112) AS '112',
CONVERT(VARCHAR,GETDATE(),14) AS '14',
CONVERT(VARCHAR,GETDATE(),114) AS '114'

Попытка опубликовать изображение набора результатов, но мне нужно "Заработать более 10 репутации, чтобы публиковать изображения".

5 голосов
/ 21 февраля 2013
Select Right(IsNull(Convert(Varchar,GetDate(),100),''),7)
1 голос
/ 06 декабря 2017

SQL может выполнять встроенное преобразование за время

mytime в базе данных 4: 15: 00

SELECT CONVERT(varchar(15),  CAST(mytime AS TIME), 100) as my_time from mytable
0 голосов
/ 20 января 2011

SQL Server не форматирует время. Это ваше клиентское приложение, которое контролирует, как отображается время. Вам следует изменить настройки формата времени в вашем приложении или в вашем коде.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...