sql server 2005 - por - Crear una columna calculada en una fecha y hora
sql server columna calculada condicional (3)
Tengo una columna de fecha y hora de NULL en mi tabla de SQL Server 2005 llamada DateTimeDeleted.
Me gustaría tener una columna calculada de tipo BIT que sea 1 si DateTimeDeleted no es nulo, de lo contrario, 0. Sin embargo, parece que no puedo obtener la sintaxis de la fórmula correcta.
He intentado:
(TsDeleted IS NULL) = 0
pero me da un error de sintaxis
¡Ayuda! :)
Creo que esto debería funcionar:
update table
set IsDeleted = case when DateTimeDeleted is null then 0 else 1 end
Esto funcionará, básicamente hace una división por sí mismo si no es nulo y luego divide 0 por 1 si es NULO
CONVERT(INT,IsNULL(DateTimeDeleted,0))/CONVERT(INT,IsNULL(DateTimeDeleted,1))
Alter Table MyTableName
Add IsDeleted As
(Case When [DateTimeDeleted] Is Null
Then (0) Else (1) End)
Esto saldrá como un entero ... Si realmente quieres que sea un poco, entonces:
Alter Table MyTableName
Add IsDeleted As
cast( (Case When [DateTimeDeleted] Is Null
Then (0) Else (1) End) as Bit)