Questão de Banco de Dados — Consultas e Comandos em SQL — VUNESP 2024
Banco de Dados›Consultas e Comandos em SQL
Código
vu212094
Banca
VUNESP
Órgão
Pref Aparecida (SP)
Ano
2024
Cargo
Ana ( )
Considerando o sistema gerenciador de banco de dados Oracle 21c, quando da escrita de expressões, deve-se considerar a ordem de precedência para avaliação dessas expressões. Dessa forma, é correto afirmar que
Aas operações de comparação têm maior precedência que a operação de exponenciação.
Bas operações de multiplicação e divisão têm menor precedência do que a operação de inclusão (OR).
Ca operação de exponenciação tem maior precedência do que a operação de negação (NOT).
Da operação de concatenação tem menor precedência do que a operação de conjunção (AND).
Ea operação de negação (NOT) tem maior precedência do que a operação de subtração.
Revelar gabarito e comentário▾
GabaritoC — a operação de exponenciação tem maior precedência do que a operação de negação (NOT).
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”.
Precedência de operadores no Oracle SQL
Gabarito: letra C. No Oracle, a operação de exponenciação (**) tem maior precedência do que a operação de negação lógica (NOT). A ordem de precedência dos operadores no Oracle segue uma hierarquia bem definida, e a alternativa C espelha corretamente essa hierarquia.
A precedência de operadores determina a ordem em que as operações são avaliadas em uma expressão. No Oracle, assim como em outras linguagens, operadores com maior precedência são avaliados primeiro. Quando dois operadores têm a mesma precedência, a avaliação ocorre da esquerda para a direita (exceto para operadores unários, que são avaliados da direita para a esquerda).
A hierarquia de precedência no Oracle, da maior para a menor, é a seguinte:
Comparação (=, <, >, <=, >=, <>, !=, LIKE, IN, IS NULL, BETWEEN, etc.)
NOT (negação lógica)
AND (conjunção lógica)
OR (inclusão lógica)
Essa ordem é crucial para escrever expressões corretas. Por exemplo, na expressão 2 + 3 * 4, a multiplicação é avaliada primeiro, resultando em 2 + 12 = 14, e não (2 + 3) * 4 = 20. Da mesma forma, em NOT 1 = 1, a comparação é avaliada antes da negação, resultando em NOT (1 = 1) = NOT TRUE = FALSE.
A banca explora exatamente essa hierarquia, invertendo a posição de operadores em cada alternativa. Para acertar, é preciso memorizar a ordem e, principalmente, entender que operadores aritméticos e de concatenação têm precedência sobre operadores lógicos, e que dentro dos lógicos, NOT > AND > OR.
Alternativa A — ❌ Incorreta
Afirma que operações de comparação têm maior precedência que exponenciação. Na verdade, a exponenciação () tem precedência maior** que as operações de comparação. A ordem correta é: exponenciação → multiplicação/divisão → adição/subtração → concatenação → comparação → NOT → AND → OR. A banca inverteu a hierarquia, colocando a comparação acima da exponenciação.
Alternativa B — ❌ Incorreta
Afirma que multiplicação e divisão têm menor precedência que OR. Isso é o oposto da realidade. Multiplicação e divisão têm precedência muito maior que OR. Na hierarquia, multiplicação/divisão estão no nível 2, enquanto OR está no nível 8 (o mais baixo). A banca inverteu completamente a ordem.
Alternativa C — ✅ Correta ⟵ GABARITO
Afirma que exponenciação tem maior precedência que NOT. Isso está correto. A exponenciação () está no nível mais alto de precedência (junto com operadores unários), enquanto NOT está no nível 6. Portanto, em uma expressão como `NOT 2 3, a exponenciação é avaliada primeiro (2 ** 3 = 8), e depois a negação (NOT 8`).
Alternativa D — ❌ Incorreta
Afirma que concatenação tem menor precedência que AND. Na verdade, a concatenação (||) tem precedência maior que AND. A concatenação está no nível 4, enquanto AND está no nível 7. A banca inverteu a ordem, colocando a concatenação abaixo de AND.
Alternativa E — ❌ Incorreta
Afirma que NOT tem maior precedência que subtração. Isso é falso. A subtração (-) tem precedência maior que NOT. A subtração está no nível 3, enquanto NOT está no nível 6. A banca inverteu a hierarquia, colocando NOT acima da subtração.
NÃO CAIA NESSA!
A banca explora a confusão entre a precedência de operadores aritméticos e lógicos. O candidato que não memorizou a hierarquia completa tende a achar que operadores lógicos (NOT, AND, OR) têm precedência sobre aritméticos, mas é exatamente o contrário. A ordem correta é: aritméticos > concatenação > comparação > NOT > AND > OR. Memorize essa sequência e você não cairá nessa pegadinha.
PEGA ESSA DICA!
Para fixar a ordem de precedência, use o mnemônico "A C C N A O" (Aritméticos, Concatenação, Comparação, NOT, AND, OR). Ou, em uma frase: "Aritméticos Concatenação Comparação NOT AND OR". Na prova, se a questão envolver expressões com operadores mistos, escreva a hierarquia no rascunho antes de analisar as alternativas.