19.08.2021 Views

1546027450-1546027450-sql

Ensina estrutura básica de SQL

Ensina estrutura básica de SQL

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

136 - Capítulo 7 – SUBQUERIES (SUBCONSULTAS)

Entenda as duas etapas da consulta:

1. SELECT CODIGO_CLIENTE FROM PEDIDO WHERE NR_PEDIDO = 3;

A resposta é 1004 e este resultado é utilizado na segunda etapa:

2. SELECT NOME_CLIENTE FROM CLIENTE WHERE CODIGO_CLIENTE

= 1004;

A seguir o resultado:

---------------

DANIELA DAMASIO

Você observou que na primeira etapa a consulta retornou apenas

uma linha? É daí que vem a denominação subconsulta de uma linha.

Utilizamos o operador '=' no exemplo apresentado. Porém outros

operadores poderiam ter sido utilizados <, <=, >, >= e <>. No entanto,

em qualquer caso, a primeira etapa deveria retornar 0 (zero) ou 1 (uma)

linha. Quando houver a possibilidade de retornar mais de uma linha,

devemos utilizar as subconsultas de várias linhas, conforme veremos

a seguir.

7.2 Subconsultas de várias linhas

As subconsultas de várias linhas podem retornar mais de uma linha na

instrução SQL externa. Utilizamos frequentemente os operadores IN,

ANY ou ALL para verificar se o valor de uma coluna está contido em

uma lista de valores.

O exemplo a seguir toma como base as mesmas tabelas (CLIENTE e

PEDIDO) utilizadas no item anterior (CONSULTAS DE UMA LINHA).

Utilizaremos uma subconsulta de várias linhas para apresentar os nomes

dos clientes (NOME_CLIENTE) que fizeram pedidos cujos números de

pedidos (NR_PEDIDO) estão contidos na lista que apresenta os valores

1, 2 e 4.

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!