Julgue os próximos itens, no que diz respeito a comandos SQL . . .

Exercício 4 de 10 em: Banco de Dados / SQL

Ano: 2018 Banca: CESPE Órgão: TCE-MG Cargo: Analista de controle externo - Ciência da computação

📌 Julgue os próximos itens, no que diz respeito a comandos SQL de consulta.

  • I Subqueries de múltiplas colunas retornam várias colunas em uma mesma linha.
  • II A função UNION apresenta as linhas que existam simultaneamente em duas ou mais tabelas.
  • III A função EXISTS garante que o resultado de uma subquery somente seja mostrado se retornar uma ou mais linhas.
  • IV A função EXTRACT retorna uma das informações de um campo do tipo data (dia, mês, ano, hora, minuto ou segundo).

Assinale a opção correta.

Parte 1 da resolução

A afirmativa do item I "Subqueries de múltiplas colunas retornam várias colunas em uma mesma linha" está errada, pois as subqueries de múltiplas colunas retornam várias colunas em colunas distintas, conforme demonstrado no exemplo abaixo.

  • Suponha que a consulta SELECT * FROM tabelaum retorne o resultado da tabela abaixo :
    • campo_umcampo_dois
      11
      22
      31
      42
      51
  • Já a consulta SELECT * FROM tabelaumWHERE (campo_um, campo_dois) IN (SELECT campo_um, campo_dois FROM tabelaum WHERE campo_dois IN (1)); é executada corretamente e retorna uma tupla de dados fazendo uma comparação de duas colunas na subquery, conforme o resultado abaixo :
    • campo_umcampo_dois
      11
      31
      51
Parte 2 da resolução

A afirmativa do item 2 "A função UNION apresenta as linhas que existam simultaneamente em duas ou mais tabelas." está errada pois a instrução UNION retorna a diferença de registros entre duas tabelas mais uma linha por registro que seja igual. O texto item 2 se refere ao comando UNION ALL.

  • Suponha que a consulta SELECT * FROM tabelaum retorne o resultado da tabela abaixo :
    • campo_umcampo_dois
      11
      22
      31
  • Suponha que a consulta SELECT * FROM tabeladois retorne o resultado da tabela abaixo :
    • campo_umcampo_dois
      11
      22
      42
  • Com a query select campo_um, campo_dois from tabelaum union select campo_um, campo_dois from tabeladois é feito o union entre as tabelaum e tabeladois e o resultado é demonstrada abaixo :
    • campo_umcampo_dois
      22
      11
      31
      42
  • Com a query select campo_um, campo_dois from tabelaum union all select campo_um, campo_dois from tabeladois é feito a união sem descarte de registros entre as tabelaum e tabeladois e o resultado é demonstrada abaixo :
    • campo_umcampo_dois
      11
      22
      31
      11
      22
      42

Observação : Perceba que a query que usa UNION retorna 4 linhas enquanto que a query que usa UNION ALL retorna 6 linhas, ou seja, 3 linhas da tabela 1 com as 3 linhas da tabela 2.

Parte 3 da resolução

Já que os itens I e II estão errados, por eliminação sabe-se que as alternativas A, B, C e E não são a resposta, sobrando a Letra D como resposta correta.

Veja também as perguntas respondidas abaixo.

brand logo

Pergunta


O que é ? e para que serve a linguagem SQL ?

Acessar resposta.

brand logo

Pergunta


O que é uma SQL ANSI ?

Acessar resposta.

brand logo

Pergunta


O que é uma query e como é escrita ?

Acessar resposta.


exerciciosresolvidos.com.br

Acreditamos na educação gratuita e de qualidade. Nos ajude com sua opinião, sugestão ou crítica : exerciciosresolvidosbr@gmail.com

Copyright © 2020. Built with ❤ Love