MySQL realiza comparações de acordo com as seguintes re...

MySQL realiza comparações de acordo com as seguintes regras: I. Se um ou ambos os argumentos são NULL, o resultado da compar...


MySQL realiza comparações de acordo com as seguintes regras:

I. Se um ou ambos os argumentos são NULL, o resultado da comparação é NULL, exceto para o operador <=>.
II. Se ambos os argumentos em uma comparação são strings, eles são comparados como strings.
III. Valores hexadecimais são tratados como strings binárias, se não comparadas a um número.
IV. Se um dos argumentos é uma coluna TIMESTAMP ou DATETIME e o outro argumento é uma constante, a constante é convertida para um timestamp antes da comparação ser realizada.

Está(ão) correta(s) apenas a(s) afirmativa(s):

🚀 Desbloqueie a explicação completa

Veja comentários detalhados e resoluções exclusivas para entender o gabarito desta questão.

  • Matheus Fernandes
    Matheus Fernandes
    31/12/1969 • 21:00
    Gabarito: e)

    Vamos analisar cada afirmativa com base no funcionamento do MySQL em relação às comparações.

    I. Se um ou ambos os argumentos são NULL, o resultado da comparação é NULL, exceto para o operador <=>. Isso está correto, pois o operador <=> é o operador de comparação NULL-safe no MySQL, que retorna verdadeiro ou falso mesmo quando um dos operandos é NULL.

    II. Se ambos os argumentos em uma comparação são strings, eles são comparados como strings. Isso também é correto, pois o MySQL realiza comparações lexicográficas quando os dois operandos são strings.

    III. Valores hexadecimais são tratados como strings binárias, se não comparadas a um número. Essa afirmativa está correta, pois no MySQL, valores hexadecimais são interpretados como strings binárias (BLOBs) a menos que sejam comparados com números, quando então são convertidos para valores numéricos.

    IV. Se um dos argumentos é uma coluna TIMESTAMP ou DATETIME e o outro argumento é uma constante, a constante é convertida para um timestamp antes da comparação ser realizada. Isso também está correto, pois o MySQL converte a constante para o tipo da coluna para realizar a comparação corretamente.

    Portanto, todas as afirmativas I, II, III e IV estão corretas, confirmando que a alternativa correta é a letra e.

    Checagem dupla: revisando as regras oficiais do MySQL sobre comparações, todas as afirmativas estão de acordo com a documentação, reforçando que a resposta correta é a alternativa e.
🔒
Conteúdo restrito

Cadastre-se para visualizar comentários e resoluções.

Criar conta grátis

Utilizamos cookies e tecnologias semelhantes para aprimorar sua experiência. Política de Privacidade.