Formatando datas SqlServer
Postado em : 26/09/2019
Usando o comando CONVERT para formatar datas no MSSqlServer.
Este é um dos principais comando utilizados para a Formatação de dadas em MSSqlServer, principalmente se utiliza as versões mais antigas como 2008r2.
Syntaxe
CONVERT(VARCHAR, [data], [Tipo])
utilize os tipos na tabela abaixo de acordo com o resultado esperado.
Datas | |||
---|---|---|---|
Tipo | Formato Retorno | Tamanho | Resultado |
112 | YYYYMMDD | 8 | 20191231 |
12 | YYMMDD | 6 | 191231 |
111 | YYYY/MM/DD | 10 | 201/12/31 |
11 | YY/MM/DD | 8 | 19/12/31 |
101 | MM/DD/YYYY | 10 | 12/31/2019 |
1 | MM/DD/YY | 8 | 12/31/19 |
103 | DD/MM/YYYY | 10 | 31/12/2019 |
3 | DD/MM/YY | 8 | 31/12/19 |
102 | YYYY.MM.DD | 10 | 2019.12.31 |
2 | YY.MM.DD | 8 | 19.12.31 |
104 | DD.MM.YYYY | 10 | 31.12.2019 |
4 | DD.MM.YY | 8 | 31.12.19 |
110 | MM-DD-YYYY | 10 | 12-31-2019 |
10 | MM-DD-YY | 8 | 12-31-19 |
105 | DD-MM-YYYY | 10 | 31-12-2019 |
5 | DD-MM-YY | 8 | 31-12-19 |
100 | MMM DD YYYY HH:mm | 19 | Dez 31 2019 4:05AM |
107 | MMM DD, YYYY | 12 | Dez 31, 2019 |
7 | MMM DD, YY | 10 | Dez 31, 19 |
6 | DD MMM YY | 1 | 31 Dez 19 |
Data hora | |||
0 | MMM DD YYYY HH:mm | 19 | Dez 31 19 12:38AM |
121 | YYYY-MM-DD hh:mm:ss.ms | 23 | 2019-12-31 23:59:59.999 |
21 | YYYY-MM-DD hh:mm:ss.ms | 23 | 2019-12-31 23:59:59.999 |
120 | YYYY-MM-DD hh:mm:ss | 19 | 2019-12-31 23:59:59 |
20 | YYYY-MM-DD hh:mm:ss | 19 | 2019-12-31 23:59:59 |
22 | MM/DD/YY HH:mm:ss | 21 | 12/31/19 10:59:59 AM |
25 | YYYY-MM-DD hh:mm:ss.ms | 23 | 2019-12-31 23:59:59.999 |
100 | MMM DD YYYY HH:mm:ss.ms | 26 | Dez 31 2019 10:05AM |
109 | MMM DD YYYY HH:mm:ss.ms | 26 | Dez 31 2019 4:05:06.007AM |
9 | MMM DD YYYY HH:mm:ss.ms | 26 | Dez 31 2019 4:05:06.007AM |
13 | DD MMM YYYY hh:mm:ss.ms | 24 | 31 Dez 2019 04:05:06.007 |
113 | DD MMM YYYY hh:mm:ss.ms | 24 | 31 Dez 2019 04:05:06.007 |
106 | DD MMM YYYY | 1 | 31 Dez 2019 |
126 | YYYY-MM-DDThh:mm:ss.ms | 22 | 2019-12-31T23:59:59.999 |
127 | YYYY-MM-DDThh:mm:ss.ms | 22 | 2019-12-31T23:59:59.999 |
Hora | |||
14 | hh:mm:ss:ms | 12 | 04:05:06:007 |
114 | hh:mm:ss:ms | 12 | 04:05:06:007 |
8 | hh:mm:ss | 12 | 04:05:06 |
108 | hh:mm:ss | 12 | 04:05:06 |
24 | hh:mm:ss | 12 | 04:05:06 |
Exemplo
Segue abaixo o exemplo do comando mais utilizado quando precisamos formatar uma data em SqlServer em um Script ou procedure.
SELECT CONVERT(VARCHAR, GETDATE() ,103) > 31/12/2019 SELECT CONVERT(VARCHAR, GETDATE() ,112) > 20191231
Novas Versões
Nas versões mais novas do SqlServer podemos usar o comando FORMAT.
Syntaxe
FORMAT ([data],formato,[culture])
Opções para formatação
Formato | descricao |
---|---|
d | Dia de 1-31 |
dd | Dia de 01-31 |
ddd | Nome dia semana abreviado 3 dígitos |
dddd | Nome dia da semana completo |
MM | Mês de 01-12 |
MMM | Nome do mês abreviado com 3 dígitos |
MMMM | Nome do mês completo |
yy | Ano com 2 digitos |
yyyy | Ano com 4 digitos |
hh | Hora de 01-12 |
HH | Hora de 00-24 |
mm | Minutos de 00-59 |
tt | Mostra AM-PM |
Exemplo
Segue exemplo de utilização do comando.
SELECT FORMAT (cast('2019-09-25 03:10:45' as datetime), 'dd/MM/yyyy HH:mm tt', 'en-us') as date > 25/09/2019 03:10 AM -- Utilizando Culture português Brasil SELECT FORMAT (cast('2019-9-25 23:10:45' as datetime), 'dddd, dd "de" MMMM "de" yyyy', 'pt-br') as date > quarta-feira, 25 de setembro de 2019
Links Relacionados
- Atributo para validar Datas utilizando Data Annotation em Asp.Net MVC 4 com C# (CSharp).
- Atributo para validar Horas utilizando Data Annotation em Asp.Net MVC 4 com C# (CSharp)
- Aula 11 - Acessando Banco de Dados SQL SERVER - Criando Consultas em sua aplicação em Asp.Net MVC 4 com C#(CSharp)
- Aula 12 - MS SQL Server - Comandos SQL e Stored Procedures em sua aplicação em Asp.Net MVC 4 com C#(CSharp)
- Aula 15 - Download das ferramentas necessárias para o nosso curso de Asp.Net MVC 4 com C#(CSharp)
- Aula 16 - Criando o banco de dados e configurando o SQLServer para nosso curso de Asp.Net MVC 4 com C#(CSharp)
- Aula 17 - Criando o banco de dados e configurando o SQLServer EXPRESS para nosso curso de Asp.Net MVC 4 com C#(CSharp)
- Classe para fazer Conexão MS SqlServer em C#(CSharp)
- Comando NULLIF no SQLServer.
- Consulta SQLServer com paginação
- Criando Tabelas Temporarias em MS-SqlServer
- Curso Instalando e configurando o MS SQL Server Express 2014 e Management Studio 2014
- Definir o dia em um DateTime.
- DELETE CASCADE no SqlServer
- Desvendando o Poder da Função STRING_AGG no SQL Server para concatenação de dados
- DROP TABLE IF EXISTS no SQL Server.
- Exemplo de acesso a dados com SQL Server em C#.
- Exemplo de consulta em SqlServer para encontrar uma chave Estrangeira
- Exemplo de Stored Procedure com tratamento de erros e transação. (SqlServer)
- Exemplos de Stored Procedure SQL Server
- Explorando Tipos de Dados Personalizados no SqlServer: Utilidade e Impacto na Performance
- Extensões para DataReader, tratando valores de suas consultas SQL (DataReaderExtensions) C#(CSharp)
- Fazendo a paginação de consultas em MySQL com o comando Limit e Offset
- Formatando datas MySql
- Função MySql Calcular Idade
- Função para devolver data do próximo dia da semana informado C#(CSharp).
- Função para gerar tabela com listagem contendo intervalo entre duas datas. (SqlServer)
- MS SQL Server Express 2014 e Management Studio 2014 - Download e Intalação
- Não consigo apagar um Banco de dados (can not drop database) - MS-SQL Server.
- Quando utilizar NOLOCK e READPAST no SqlServer.
- Restaurando um Banco de dados quando este fica travado informando estar restaurando, MS-SQL Server.
- Rodando Script MS-SQL Server diretamente pela linha de comando
- Salvando CSV com cabeçalho no SQL Server Management Studio
- Trabalhando com Cursores em MS-SQL Server.
- Tratando colunas nulas em sua Query SqlServer
- Update/Delete com INNER em MS-SQL Server
- Validando Valores nulos vindos de nosso Banco de Dados C#(CSharp)