A versão “Denali” do SQL Server introduziu a nova função FORMAT() para a formatação de valores DATETIME e numéricos. Nas versões anteriores usamos os métodos CAST ou CONVERT para formatar a data e a hora, como abaixo:
DECLARE @d DATETIME = GETDATE()
SELECT CONVERT(VARCHAR, @d, 103) AS 'dd/MM/yyyy',
CONVERT(VARCHAR, @d, 104) AS 'dd.MM.yyyy',
CONVERT(VARCHAR, @d, 106) AS 'dd mon yyyy',
CONVERT(VARCHAR, @d, 107) AS 'Mon dd, yyyy'
dd/MM/yyyy dd.MM.yy dd/MMM/yy MMM dd, yy —————————— ———————— ——————–—— —————————— 20/07/2011 25.07.2011 25/Jul/2011 Jul 25, 11
DECLARE @d DATETIME = GETDATE()
SELECT FORMAT ( @d, 'dd/MM/yyyy') AS 'dd/MM/yyyy',
FORMAT ( @d, 'dd.MM.yyy') AS 'dd.MM.yy',
FORMAT ( @d, 'dd/MMM/yyy') AS 'dd/MMM/yy',
FORMAT ( @d, 'MMM dd, yy') AS 'MMM dd, yy'
dd/MM/yyyy dd.MM.yy dd/MMM/yy MMM dd, yy ———–—————— ————————— ————————— ——–———————— 20/07/2011 20.07.2011 20/Jul/2011 Jul 20, 11
DECLARE @d DATETIME = GETDATE()
SELECT FORMAT ( @d, 'dd MMMM, yyyy', 'en-US') AS 'dd MMMM, yyyy',
FORMAT ( @d, 'dd MMMM, yyyy', 'fr-FR') AS 'dd MMMM, yyyy',
FORMAT ( @d, 'dd MMMM, yyyy', 'de-DE') AS 'dd MMMM, yyyy'
dd MMMM, yyyy dd MMMM, yyyy dd MMMM, yyyy ————————————— ————————————— ————————————— 20 July, 2011 20 juillet, 2011 20 Juli, 2011
Autor/Fonte: SQL & Me
Comente e interaja!