Eu tenho duas colunas em minha tabela, uma varchar(8)
intitulada Trans_Time
que contém dados em um XX:XX:XX
formato de hora e uma DateTime
coluna chamada Trand_Date
que contém apenas um componente de data no XX-XX-XXXX
formato.
Estou tentando combinar as duas colunas para obter uma data e hora completas (ou seja, se Trans_Time
for 08:10:14
e Trand_Date
for 04-04-2007
, a saída deve ser 04-04-2007 08:10:14
).
Meu problema é que algumas vezes o Trans_Time
é nulo e isso produz uma saída nula.
Existe alguma maneira de tratar null como 00:00:00
?
Você pode usar ISNULL ou COALESCE em T-SQL para substituir um valor nulo:
Ambas as colunas acima devem retornar o mesmo valor. Observe que, se você deseja realizar comparações baseadas em datas, por exemplo
DATEDIFF
,DATEADD
ou até mesmo algo tão simples quantoWHERE Trand_DateTime < GETDATE()
, você pode criar uma exibição da tabela que apresenta os valores como um tipo de dados SQL DateTime real da seguinte forma:Então você pode fazer coisas como:
Tente usar isnull para substituir o valor nulo.