Um parâmetro obrigatório referente à coluna a ser formatada
Format
Um parâmetro obrigatório que especifica o padrão de formato do valor. Ele deve conter uma string de formato .NET de valor. Ilustraremos os vários formatos permitidos nos exemplos abaixo
Culture
Um parâmetro opcional que especifica a formatação de data/hora com reconhecimento de local.
FORMAT() exemplos
Exemplo 1: Formatação de variáveis numéricas
SELECTFORMAT(0112223333, ‘##-###-####') -- replace format with what is shown in the table below.Tecnologia
phone_number
0
11-222-3333
Exemplo 2: Formatação de data e hora
Podemos formatar uma variável de formato datetime em diferentes formatos.
DECLARE@dDATETIME= CAST('2023-02-01 04:05:06'ASDATETIME);SELECTFORMAT(@d, format)-- replace format with what is shown in the table below.Tecnologia
Formato
Consulta
Exemplo de data formatada para 1 de fevereiro de 2023 04:05:06 AM
d
FORMAT(@d, ‘d')
2/1/2023
D
FORMAT(@d, D)
Quarta-feira, 1º de fevereiro de 2023
f
FORMAT(@d, ‘f')
Quarta-feira, 1 de fevereiro de 2023 4:05 AM
F
FORMAT(@d, ‘F')
Quarta-feira, 1 de fevereiro de 2023 4:05:06 AM
g
FORMAT(@d, ‘g')
10/8/2022 6:01 AM
G
FORMAT(@d, ‘G')
10/8/2022 6:01:06 AM
O
FORMAT(@d, ‘O')
2022-10-08T06:01:06.117Z
r
FORMAT(@d, ‘r')
Wed, 01 Feb 2023 04:05:06 GMT
R
FORMAT(@d, ‘R')
Wed, 01 Feb 2023 04:05:06 GMT
s
FORMAT(@d, ‘s')
2023-02-01T04:05:06
u
FORMAT(@d, ‘u')
2023-02-01 04:05:06Z
U
FORMAT(@d, ‘U')
Quarta-feira, 1 de fevereiro de 2023 4:05:06 AM
t
FORMAT(@d, ‘t')
4:05 AM
T
FORMAT(@d, ‘T')
4:05:06 AM
Y
FORMAT(@d, ‘Y')
Fevereiro de 2023
MM_dd_yyyy
FORMAT(@d, ‘MM_dd_yyyy')
02_01_2023
MMM-dd-yy
FORMAT(@d,'MMM-dd-yy')
01/02/23
yyyy-dd-MM
FORMAT(@d,'yyyy-dd-MM')
2023-01-02
aaaa dd-MM hh.mm
FORMAT(@d,'yyyy-dd-MM hh.mm')
2023-01-02 04.05
yyyy-dd-MM hh.mm.ss
FORMAT(@d,'yyyy-dd-MM hh.mm.ss')
2023-01-02 04.05.06
aaaa dd-MM hh.mm.ss tt
FORMAT(@d,'yyyy-dd-MM hh.mm.ss tt')
2023-01-02 04.05.06 AM
Exemplo 3: Formatação de data com reconhecimento de cultura
Podemos formatar datas em diferentes idiomas com o parâmetro culture.
DECLARE@dDATE= CAST('2023-02-01'ASDATE);SELECTFORMAT(@d, format, culture)-- replace format with what is shown in the table below.Tecnologia
Cultura
Consulta
Exemplo de data formatada para 1º de fevereiro de 2023
Inglês dos EUA (en-US)
FORMAT(@d, 'd', 'en-US')
2/1/2023
FORMAT(@d, 'f', 'en-US')
Quarta-feira, 1º de fevereiro de 2023 12:00 AM
Grã-Bretanha Inglês (en-gb)
FORMAT(@d, 'd', 'en-gb')
01/02/2023
FORMAT(@d, 'f', 'en-gb')
01 de fevereiro de 2023 00:00
Alemão (de-de)
FORMAT(@d, 'd', 'de-de')
01.02.2023
FORMAT(@d, 'f', 'de-de')
Mittwoch, 1. Fevereiro de 2023 00:00
Chinês (zh-cn)
FORMAT(@d, 'd', 'zh-cn')
2023/2/1
FORMAT(@d, 'f', 'zh-cn')
2023年2月1日 0:00
Indiano (hi-in)
FORMAT(@d, 'd', ‘hi-in')
01-02-0203
FORMAT(@d, 'f', ‘hi-in')
01 फरवरीी 2023 00:00
Russo (ru-ru)
FORMAT(@d, 'd', ru-ru')
01-02-2023
FORMAT(@d, 'f', ru-ru')
1 февраля 2023 г. 0:00
Espanha (gl-es)
FORMAT(@d, 'd', 'gl-es')
01/02/2023
FORMAT(@d, 'f', 'gl-es')
mércores 01 febreiro 2023 00:00
Exemplo 4: Formatação de moeda
Também podemos formatar convenientemente valores numéricos em moedas.
SELECTFORMAT(amount,'c', culture)-- replace format with what is shown in the table below.Tecnologia
Cultura
Consulta
Exemplo de moeda formatada
Inglês dos EUA (en-US)
SELECT
FORMAT(5.5, 'c', 'en-US')
$5.5
Grã-Bretanha Inglês (en-gb)
SELECT
FORMAT(@d, 'c', 'en-gb')
£5.5
Alemão (de-de)
SELECT
FORMAT(@d, 'c', 'de-de')
5,50 €
Chinês (zh-cn)
SELECT
FORMAT(@d, 'c', 'zh-cn')
¥5.50
Indiano (hi-in)
SELECT
FORMAT(@d, 'c', ‘hi-in')
₹5.50
Russo (ru-ru)
SELECT
FORMAT(@d, 'c', ru-ru')
5,50 ₽
Espanha (gl-es)
SELECT
FORMAT(@d, 'c', 'gl-es')
€5,50
Requisitos técnicos
FORMAT() funciona no SQL Server (a partir de 2012), Azure SQL Database. FORMAT() também funciona no PostgreSQL, mas se comporta de forma diferente. Você pode saber mais sobre isso neste curso.
Se você deseja começar a usar o SQL, nós o ajudamos. Neste tutorial de SQL, apresentaremos as consultas SQL, uma ferramenta poderosa que nos permite trabalhar com os dados armazenados em um banco de dados. Você verá como escrever consultas SQL, aprenderá sobre
O que é o
FORMAT()função?FORMAT()transforma números ou datas em texto, com regras para sua exibição.Quando usar
FORMAT()FORMAT()é útil para exibir datas, moeda e valores numéricos em um formato específico.FORMAT()syntaxParâmetro
O que é isso?
ValueUm parâmetro obrigatório referente à coluna a ser formatada
FormatUm parâmetro obrigatório que especifica o padrão de formato do valor. Ele deve conter uma string de formato .NET de valor. Ilustraremos os vários formatos permitidos nos exemplos abaixo
CultureUm parâmetro opcional que especifica a formatação de data/hora com reconhecimento de local.
FORMAT()exemplosExemplo 1: Formatação de variáveis numéricas
phone_number0
11-222-3333
Exemplo 2: Formatação de data e hora
Podemos formatar uma variável de formato datetime em diferentes formatos.
Formato
Consulta
Exemplo de data formatada para 1 de fevereiro de 2023 04:05:06 AM
d
FORMAT(@d, ‘d')2/1/2023
D
FORMAT(@d, D)Quarta-feira, 1º de fevereiro de 2023
f
FORMAT(@d, ‘f')Quarta-feira, 1 de fevereiro de 2023 4:05 AM
F
FORMAT(@d, ‘F')Quarta-feira, 1 de fevereiro de 2023 4:05:06 AM
g
FORMAT(@d, ‘g')10/8/2022 6:01 AM
G
FORMAT(@d, ‘G')10/8/2022 6:01:06 AM
O
FORMAT(@d, ‘O')2022-10-08T06:01:06.117Z
r
FORMAT(@d, ‘r')Wed, 01 Feb 2023 04:05:06 GMT
R
FORMAT(@d, ‘R')Wed, 01 Feb 2023 04:05:06 GMT
s
FORMAT(@d, ‘s')2023-02-01T04:05:06
u
FORMAT(@d, ‘u')2023-02-01 04:05:06Z
U
FORMAT(@d, ‘U')Quarta-feira, 1 de fevereiro de 2023 4:05:06 AM
t
FORMAT(@d, ‘t')4:05 AM
T
FORMAT(@d, ‘T')4:05:06 AM
Y
FORMAT(@d, ‘Y')Fevereiro de 2023
MM_dd_yyyy
FORMAT(@d, ‘MM_dd_yyyy')02_01_2023
MMM-dd-yy
FORMAT(@d,'MMM-dd-yy')01/02/23
yyyy-dd-MM
FORMAT(@d,'yyyy-dd-MM')2023-01-02
aaaa dd-MM hh.mm
FORMAT(@d,'yyyy-dd-MM hh.mm')2023-01-02 04.05
yyyy-dd-MM hh.mm.ss
FORMAT(@d,'yyyy-dd-MM hh.mm.ss')2023-01-02 04.05.06
aaaa dd-MM hh.mm.ss tt
FORMAT(@d,'yyyy-dd-MM hh.mm.ss tt')2023-01-02 04.05.06 AM
Exemplo 3: Formatação de data com reconhecimento de cultura
Podemos formatar datas em diferentes idiomas com o parâmetro culture.
Cultura
Consulta
Exemplo de data formatada para 1º de fevereiro de 2023
Inglês dos EUA (en-US)
FORMAT(@d, 'd', 'en-US')2/1/2023
FORMAT(@d, 'f', 'en-US')Quarta-feira, 1º de fevereiro de 2023 12:00 AM
Grã-Bretanha Inglês (en-gb)
FORMAT(@d, 'd', 'en-gb')01/02/2023
FORMAT(@d, 'f', 'en-gb')01 de fevereiro de 2023 00:00
Alemão (de-de)
FORMAT(@d, 'd', 'de-de')01.02.2023
FORMAT(@d, 'f', 'de-de')Mittwoch, 1. Fevereiro de 2023 00:00
Chinês (zh-cn)
FORMAT(@d, 'd', 'zh-cn')2023/2/1
FORMAT(@d, 'f', 'zh-cn')2023年2月1日 0:00
Indiano (hi-in)
FORMAT(@d, 'd', ‘hi-in')01-02-0203
FORMAT(@d, 'f', ‘hi-in')01 फरवरीी 2023 00:00
Russo (ru-ru)
FORMAT(@d, 'd', ru-ru')01-02-2023
FORMAT(@d, 'f', ru-ru')1 февраля 2023 г. 0:00
Espanha (gl-es)
FORMAT(@d, 'd', 'gl-es')01/02/2023
FORMAT(@d, 'f', 'gl-es')mércores 01 febreiro 2023 00:00
Exemplo 4: Formatação de moeda
Também podemos formatar convenientemente valores numéricos em moedas.
Cultura
Consulta
Exemplo de moeda formatada
Inglês dos EUA (en-US)
SELECTFORMAT(5.5, 'c', 'en-US')$5.5
Grã-Bretanha Inglês (en-gb)
SELECTFORMAT(@d, 'c', 'en-gb')£5.5
Alemão (de-de)
SELECTFORMAT(@d, 'c', 'de-de')5,50 €
Chinês (zh-cn)
SELECTFORMAT(@d, 'c', 'zh-cn')¥5.50
Indiano (hi-in)
SELECTFORMAT(@d, 'c', ‘hi-in')₹5.50
Russo (ru-ru)
SELECTFORMAT(@d, 'c', ru-ru')5,50 ₽
Espanha (gl-es)
SELECTFORMAT(@d, 'c', 'gl-es')€5,50
Requisitos técnicos
FORMAT()funciona no SQL Server (a partir de 2012), Azure SQL Database.FORMAT()também funciona no PostgreSQL, mas se comporta de forma diferente. Você pode saber mais sobre isso neste curso.Veja também
Saiba mais sobre o SQL