Format SQL Server 2012 Time (7) to "HH: mm"
tenho colunas para cada dia da semana e quero formatá-las como HH:mm
tentei usar a nova função FORMAT
do SQL Server 2012, mas só mostra o valor NULL
.
Como posso formatar um time(7)
tipo de dados para mostrar como HH:mm
?
5 answers
Deve sempre formatar os seus dados na camada de apresentação. Se houver circunstâncias em que o datatype de tempo não pode ser formatado pela sua IU, você pode lançar o valor para um DATETIME que provavelmente será suportado.
SELECT CAST(TimeColumn AS DATETIME)
FROM MyTable
Pode usar o formato em Ms-sql para obter o formato de tempo que necessitar
Exemplo: Seleccione o formato (GETDATE (), 'hh:mm')
Resultado: 07:52
Para as suas colunas, pode substituir o GETDATE () pelo nome da sua coluna como em baixo -
Exemplo: Seleccione o formato (hora, 'hh:mm')
DECLARE @mytime Time(7)
set @mytime=GETDATE()
select SUBSTRING(CONVERT(CHAR(50),CAST(@mytime as time)),1,5)
Só para adicionar um pouco à resposta já escolhida.
Dado que está a usar os Serviços de relatórios, pode fazer a formatação com o formato ():
=Format(Now(), "hh:mm")
SELECT left(TimeColumn,5) as Time
FROM MyTable