2015-01-06 3 views
2

Я создаю файл CSV, но не могу определить правильный формат даты.Форматы преобразования даты SQL Server 2008

Я знаю кодов сайта MSDN для преобразования даты и времени: http://msdn.microsoft.com/en-us/library/ms187928.aspx

Кажется, нет никакого кода, чтобы преобразовать мой DateTime в этот формат: MM/DD/YYYY HH: MMAM например: 12/28/2014 4:33 AM

Как вы достигаете такого формата?

Платформа: Microsoft SQL Server 2008

ответ

1
SELECT CONVERT(VARCHAR(10), GETDATE(), 101) + 
     RIGHT(CONVERT(VARCHAR, GETDATE(), 100), 7) 
+0

excatly вывод, который я хотел, и самый короткий, все же мне интересно, почему SQL-сервер не имеет такого встроенного кода для него – Avithohol

1

Это то, что вы можете использовать и, вероятно, самый простой:

SELECT 
    RIGHT('0' + cast(month(dateColumn) AS NVARCHAR(2)), 2) + '/' -- generate the day 
    + RIGHT('0' + cast(day(dateColumn) AS NVARCHAR(2)), 2) + '/' -- generate the month 
    + cast(year(dateColumn) AS NVARCHAR(4)) + ' '     -- generate the year 
    + convert(VARCHAR, cast(dateColumn AS TIME)), 100)    -- generate the time 
FROM TABLE 
0
SELECT CONVERT(VARCHAR, GetDate(), 101) + ' ' + 
     CONVERT(VARCHAR, DATEPART(hh, GetDate())) + ':' + 
     RIGHT('0' + CONVERT(VARCHAR, DATEPART(mi, GetDate())), 2) AS TIME 

EDIT: Это получает AM/PM и

SELECT CONVERT(CHAR(11),GETDATE(),101) 
    + CONVERT(CHAR(5),GETDATE(),114) 
    + RIGHT(CONVERT(CHAR(5),GETDATE(),109), 2) 
+0

Фактически, вы формируете у не будет суффикса AM/PM в конце. –

+0

обновленный ответ, чтобы включить – Matt

+0

somehy его все еще не производит AM PM для меня (даже отредактированный) – Avithohol

-2

конвертируйте (VARCHAR (10), GETDATE(), 3) как 'дд/ММ/ГГ' конвертируйте (VARCHAR (10), GETDATE(), 103) в качестве 'дд/мм/гггг'

конвертируйте (VARCHAR (10), GETDATE(), 4) в качестве конвертируйте 'DD.MM.YY' (VARCHAR (10), GETDATE(), 104), как '' dD.MM.YYYY

ВЫБОР CONVERT (VARCHAR (10), GETDATE(), 5) 'дд-ММ-YY' конвертируйте (VARCHAR (10), GETDATE(), 105), как 'DD-MM-YYYY'

конвертируйте (VARCHAR (10), GETDATE(), 6) как «ddMonthyy» ВЫБОР КОНВЕРТА (VARCHAR (10), GETDATE(), 106) как «ddMonthyyyy»

конвертируйте (VARCHAR (10), GETDATE(), 7), как конвертируйте 'Monthdd.yy' (VARCHAR (10), GETDATE(), 107), как

конвертируйте '' Monthdd.yyyy (VARCHAR (10), GETDATE(), 8), как конвертируйте 'hH.MM.SS' (VARCHAR (10), GETDATE(), 108), как

конвертируйте 'hH.MM.SS' (VARCHAR (100), GETDATE(), 9) как «Monthddyy hh.mm.ss.mss» SELECT CONVERT (VARCHAR (100), GETDATE(), 109) как «Monthddyyyy hh.mm.ss.mss»

SELECT CONVERT (VARCHAR (100), GETDATE(), 10) как 'mm-dd-yy' Конвертируйте (VARCHAR (100), GETDATE(), 110), как 'мм-дд-гггг'

конвертируйте (VARCHAR (100), GETDATE(), 11), как '/ ММ/ДД YY' ВЫБОР CONVERT (VARCHAR (100), GETDATE(), 111), как '/ мм/дд гггг'

конвертируйте (VARCHAR (100), GETDATE(), 12), как 'YYMMDD' ВЫБОР CONVERT (VARCHAR (100), GETDATE(), 112), как

конвертируйте 'ггггммдд' (VARCHAR (100), GETDATE(), 13), как конвертируйте 'ddMonthyy hh.mm.ss.mss' (VARCHAR (100), GETDATE(), 113) как 'ddMonthyyyy hh.mm.ss.mss'

+1

эта тема является уже ответил, пожалуйста, не наводняйте его в надежде на возвышение ... также он начинается с «Я знаю коды сайтов MSDN» – Avithohol

Смежные вопросы