Analista em Computação/Ênfase em Suporte em Banco de Dados
No Oracle 19c, quando uma coluna de uma linha não tem valor, a coluna é considerada null. Relacione a Coluna 1 à Coluna 2, associando o resultado das comparações entre null às respectivas expressões.Coluna 11. TRUE2. FALSE3. UNKNOWNColuna 2( ) 10 IS null( ) 10 IS NOT null( ) 10 = null( ) null = nullA ordem correta de preenchimento dos parênteses, de cima para baixo, é:
A2 – 1 – 2 – 1.
B2 – 1 – 2 – 3.
C2 – 1 – 3 – 3.
D3 – 3 – 1 – 1.
E3 – 3 – 3 – 1.
Revelar gabarito e comentário▾
GabaritoC — 2 – 1 – 3 – 3.
Comentário gerado por IA. É um apoio ao estudo, ancorado em fontes, mas pode conter imprecisões — confira sempre na fonte oficial (lei, súmula, edital e gabarito da banca). Encontrou um erro? Use “Reportar”.
NULL em SQL: Comparações com Valor Nulo
Gabarito: alternativa C. No Oracle 19c (e no SQL padrão), comparações com NULL usando operadores relacionais como = retornam UNKNOWN, enquanto os operadores IS NULL e IS NOT NULL retornam respectivamente FALSE e TRUE para valores não nulos. A sequência correta é: 10 IS null → FALSE (2), 10 IS NOT null → TRUE (1), 10 = null → UNKNOWN (3), null = null → UNKNOWN (3).
A banca testa o conceito fundamental de que NULL não é um valor comparável com =. No SQL, qualquer operação aritmética ou de comparação que envolva NULL resulta em NULL (ou UNKNOWN na lógica de três valores). Os operadores IS NULL e IS NOT NULL foram criados exatamente para verificar a presença de nulos de forma booleana.
Expressão
Resultado (Coluna 1)
Descrição
10 IS null
2 (FALSE)
Operador IS NULL retorna FALSE para valor não nulo
10 IS NOT null
1 (TRUE)
Operador IS NOT NULL retorna TRUE para valor não nulo
10 = null
3 (UNKNOWN)
Comparação com = envolvendo NULL retorna UNKNOWN
null = null
3 (UNKNOWN)
Comparação entre dois NULLs com = retorna UNKNOWN
Valor não nulo (10)
Valor nulo (NULL)
= (igualdade)
10 IS NULL → FALSE
NULL IS NULL → TRUE
IS NULL / IS NOT NULL
10 = NULL → UNKNOWN
NULL = NULL → UNKNOWN
LEVEL · soulevel.com.br
Alternativa A — ❌ Incorreta
Afirma a sequência 2 – 1 – 2 – 1, mas a terceira expressão 10 = null retorna UNKNOWN (3), não FALSE (2).
Alternativa B — ❌ Incorreta
Apresenta 2 – 1 – 2 – 3, mas a quarta expressão null = null também retorna UNKNOWN (3), e a terceira expressão já está errada ao usar 2.
Alternativa C — ✅ Correta ⟵ GABARITO
Sequência 2 – 1 – 3 – 3, que corresponde exatamente aos resultados:
10 IS null → FALSE (2)
10 IS NOT null → TRUE (1)
10 = null → UNKNOWN (3)
null = null → UNKNOWN (3)
Alternativa D — ❌ Incorreta
Inverte as duas primeiras: 10 IS null não é UNKNOWN (3) e 10 IS NOT null também não é UNKNOWN.
Alternativa E — ❌ Incorreta
Erra a primeira e a segunda: 10 IS null é FALSE (2), não UNKNOWN (3); 10 IS NOT null é TRUE (1), não UNKNOWN (3).
PEGA ESSA DICA!
Para não errar em prova, lembre-se: IS NULL/IS NOT NULL são os únicos operadores que retornam TRUE/FALSE com nulos; =, <>, <, > com qualquer nulo sempre dão UNKNOWN (não são verdadeiros nem falsos). Decore o mnemônico: "Comparação com nulo? Resultado é nulo (UNKNOWN)."