Sql Server Computadorizada sintaxe Coluna Fórmula
-
19-09-2019 - |
Pergunta
Eu quero usar uma coluna bit computadorizada que será verdadeira se outra coluna na tabela não é nulo. Qual é a fórmula correta para isso?
HasLabel = computed column (bit)
Label = varchar NULL
A seguinte fórmula não validar. - o que estou faltando
Fórmula para HasLabel = Label IS NOT NULL
Solução
A coluna computada deve retornar um valor, enquanto você está apenas fazendo uma comparação. Tente isto em vez disso:
case when label is null then 0 else 1 end
SQL Server não vai entender isso como uma coluna não anulável no entanto. Para lidar com isso, alterar o cálculo para:
isnull(case when label IS NULL then 0 else 1 end, 0)
Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow