Olá essa parte eu chamo de dicas uteis do dia a dia, pois geralmente temos que alterar algum campo aonde se tem a data, muitas vezes ele está assim'20160706' e temos que apresentar dessa forma por exemplo '06/07/2016'.
Para isso vou apresentar algumas formas que se pode fazer com o CONVERT, então lá!!!
No select abaixo podemos analisar algumas formas de exibir datas no SQL Server,
SELECT
CONVERT(VARCHAR(10),GETDATE(),101) AS '101',
CONVERT(VARCHAR(10),GETDATE(),102) AS '102',
CONVERT(VARCHAR(10),GETDATE(),103) AS '103',
CONVERT(VARCHAR(10),GETDATE(),104) AS '104',
CONVERT(VARCHAR(10),GETDATE(),105) AS '105',
CONVERT(VARCHAR(10),GETDATE(),106) AS '106',
CONVERT(VARCHAR(12),GETDATE(),107) AS '107',
CONVERT(VARCHAR(12),GETDATE(),108) AS '108',
CONVERT(VARCHAR(12),GETDATE(),109) AS '109',
CONVERT(VARCHAR(10),GETDATE(),110) AS '110',
CONVERT(VARCHAR(10),GETDATE(),111) AS '111',
CONVERT(VARCHAR(10),GETDATE(),112) AS '112',
CONVERT(VARCHAR(12),GETDATE(),113) AS '113',
CONVERT(VARCHAR(12),GETDATE(),114) AS '114',
CONVERT(VARCHAR(10),GETDATE(),120) AS '120',
CONVERT(VARCHAR(10),GETDATE(),121) AS '121'
Abaixo podemos ver a data corrente e já separar por dia, mês, Ano, Hora, Minuto e Segundo.
DECLARE @DIA SMALLINT
,@MES SMALLINT
,@ANO SMALLINT
,@HR SMALLINT
,@MIN SMALLINT
,@SEG SMALLINT
SELECT @DIA = DATEPART(DAY,GETDATE())
,@MES = DATEPART(MONTH,GETDATE())
,@ANO = DATEPART(YEAR,GETDATE())
,@HR = DATEPART(HOUR,GETDATE())
,@MIN = DATEPART(MINUTE,GETDATE())
,@SEG = DATEPART(SECOND,GETDATE())
SELECT GETDATE() AS 'GETDATE( ) ORIGINAL'
,@DIA AS 'DIA'
,@MES AS 'MES'
,@ANO AS 'ANO'
,@HR AS 'HORA'
,@MIN AS 'MINUTO'
,@SEG AS 'SEGUNDO'
Obs: Sei que parece dicas fracas mas as vezes temos que exibir um relatório ou mostrar apenas a hora ou dia em certas querys, e sempre da aquele branco na mente de como fazer essas sintax... pois bem... é sempre bom ter um bloco de notas com essas dicas.
Até a próxima pessoal.
Muito bom, Show, me ajudou muito.
ResponderExcluirObrigado Helmut!
Para a base que uso funcionou usando o CAST(Meu_Campo AS DATE) onde 'Meu_Campo' é a coluna data no banco.
Ex:
CONVERT(VARCHAR(10),CAST(Meu_Campo AS DATE),103) as DT_CADASTRO