SóProvas


ID
1460836
Banca
FGV
Órgão
DPE-MT
Ano
2015
Provas
Disciplina
Banco de Dados
Assuntos

Na maioria das implementações SQL, pode-se considerar que as expressões lógicas possam assumir três valores, verdadeiro (T), falso (F) e desconhecido (?). Isso decorre principalmente da manipulação de valores nulos (NULL).
Assim sendo, analise as quatro expressões lógicas a seguir.
not ?
F or ?
T and ?
? or T
Assinale a opção que apresenta os valores finais das expressões lógicas acima, na ordem de cima para baixo.

Alternativas
Comentários
  • NOT logico. Avalia como 1 se o operador é 0, como 0 se o operador é diferente de zero, e NOT NULL retornaNULL.

    mysql> SELECT NOT NULL; -> NULL
    OR lógico. Avalia como 1 se algum operando é diferente de zero e como NULL se algum operando for NULL, senão 0 é retornado.
    mysql> SELECT 0 || NULL; -> NULL
    AND lógico. Avalia como 1 se todos os operandos são diferentes de zero e não é NULL, como 0 se um ou mais operandos são 0, senão retorna NULL.
    mysql> SELECT 1 && NULL; -> NULL
    OR lógico. Avalia como 1 se algum operando é diferente de zero e como NULL se algum operando for NULL, senão 0 é retornado.
    mysql> SELECT 1 || NULL; -> 1

    Resolvi essa questão através da lógica: 

    not null - Da para saber quem é null? não, então a resposta é null, pois não da para negar algo que não conhecemos.

    0 or null - Null pode ser 0 ou 1 então não da para saber a resposta, pois a disjunção necessita de pelo menos um valor logico verdadeiro para ser verdade.

    1 and null - Null pode ser 0 ou 1 então não da para saber a resposta, pois a conjunção necessita de pelo menos os dois valores logicos verdadeiros para ser verdade.

    null or 1 - Retorna 1, pois independente de null a resposta será verdadeira.

    Espero ter ajudado. Bons estudo e que Deus nos ajude!
  • Show de bola, Eduardo.

    Pra quem estudou raciocínio lógico, não precisava saber nada de SQL pra resolver essa questão.

    Vamos na fé.