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

Foi útil?

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
scroll top