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

#Exercício 4


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.

A
Estão certos apenas os itens I e II.
B
Estão certos apenas os itens I e IV.
C
Estão certos apenas os itens II e III.
D
Estão certos apenas os itens III e IV.
E
Todos os itens estão certos.

#Resolução 4

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 tabelaum WHERE (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.

Resolva também as questões relacionadas abaixo sobre SQL.

Exercício 5

Para calcular o número de produtos com nomes que terminam com a letra B, o Auditor testou os comando ...

Exercício 6

Na linguagem SQL, considerando duas tabelas A e B, para se obter o que está na Tabela A e não está n ...

Exercício 10

Um programador deseja definir uma query SQL para retornar os valores das colunas salario e job_id pa ...

Veja também as perguntas respondidas abaixo.

Pergunta

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

Pergunta

O que é uma SQL ANSI ?

Pergunta

O que é uma query e como é escrita ?


exerciciosresolvidos.com.br

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

Copyright © 2024. Built with ❤ Love