Prof. Rebecca Arambasic AGBD LPBD Pesquisa avançada UNION / INTERSECT / EXCEPT Aula 1 / 2010.
-
Upload
francisco-carreiro -
Category
Documents
-
view
217 -
download
4
Transcript of Prof. Rebecca Arambasic AGBD LPBD Pesquisa avançada UNION / INTERSECT / EXCEPT Aula 1 / 2010.
![Page 1: Prof. Rebecca Arambasic AGBD LPBD Pesquisa avançada UNION / INTERSECT / EXCEPT Aula 1 / 2010.](https://reader036.fdocumentos.com/reader036/viewer/2022082901/570638481a28abb8238f4295/html5/thumbnails/1.jpg)
Prof. Rebecca Arambasic
AGBD
LPBD
Pesquisa avançadaUNION / INTERSECT / EXCEPT
Aula 1 / 2010
![Page 2: Prof. Rebecca Arambasic AGBD LPBD Pesquisa avançada UNION / INTERSECT / EXCEPT Aula 1 / 2010.](https://reader036.fdocumentos.com/reader036/viewer/2022082901/570638481a28abb8238f4295/html5/thumbnails/2.jpg)
Prof. Rebecca Arambasic
AGBD
União de Dados
• O recurso de união de dados baseia-se na união de uma consulta em uma única consulta por meio de múltiplos comandos SELECT.
• Esse recurso é utilizado pelo predicado UNION ou UNION ALL sendo posicionado entre dosi comandos de consulta.
![Page 3: Prof. Rebecca Arambasic AGBD LPBD Pesquisa avançada UNION / INTERSECT / EXCEPT Aula 1 / 2010.](https://reader036.fdocumentos.com/reader036/viewer/2022082901/570638481a28abb8238f4295/html5/thumbnails/3.jpg)
Prof. Rebecca Arambasic
AGBD
• ALL representa todos os registros encontrados na consulta, independente de esses registros serem ou não duplicados.
• Se ALL for omitido o comando UNION assume como default a apresentação de valores únicos caso haja alguma duplicidade.
União de Dados
![Page 4: Prof. Rebecca Arambasic AGBD LPBD Pesquisa avançada UNION / INTERSECT / EXCEPT Aula 1 / 2010.](https://reader036.fdocumentos.com/reader036/viewer/2022082901/570638481a28abb8238f4295/html5/thumbnails/4.jpg)
Prof. Rebecca Arambasic
AGBD
• Quando une duas ou mais tabelas apresenta apenas uma linha de registro caso haja nas tabelas envolvidas duplicidade daquele registro
União de Dados
![Page 5: Prof. Rebecca Arambasic AGBD LPBD Pesquisa avançada UNION / INTERSECT / EXCEPT Aula 1 / 2010.](https://reader036.fdocumentos.com/reader036/viewer/2022082901/570638481a28abb8238f4295/html5/thumbnails/5.jpg)
Prof. Rebecca Arambasic
AGBD
SINTAXE
SELECT col1,col2
FROM tabela1UNION [ALL]SELECT col3, col4FROM tabela2
• Observe que os comando poderão acessar tabelas diferentes e utilizar as mais diversas construçoes da linguagem.
![Page 6: Prof. Rebecca Arambasic AGBD LPBD Pesquisa avançada UNION / INTERSECT / EXCEPT Aula 1 / 2010.](https://reader036.fdocumentos.com/reader036/viewer/2022082901/570638481a28abb8238f4295/html5/thumbnails/6.jpg)
Prof. Rebecca Arambasic
AGBD
REGRAS
– Os comandos devem retornar o mesmo número de colunas
– As colunas correspondentes em cada comando devem possuir os mesmos tipos de dados.
![Page 7: Prof. Rebecca Arambasic AGBD LPBD Pesquisa avançada UNION / INTERSECT / EXCEPT Aula 1 / 2010.](https://reader036.fdocumentos.com/reader036/viewer/2022082901/570638481a28abb8238f4295/html5/thumbnails/7.jpg)
Prof. Rebecca Arambasic
AGBD
EXERCÍCIO
• Listar os títulos dos livros que cujo assunto é “Banco de Dados” ou que foram lançados por editoras que contenham “Silva” no nome.
![Page 8: Prof. Rebecca Arambasic AGBD LPBD Pesquisa avançada UNION / INTERSECT / EXCEPT Aula 1 / 2010.](https://reader036.fdocumentos.com/reader036/viewer/2022082901/570638481a28abb8238f4295/html5/thumbnails/8.jpg)
Prof. Rebecca Arambasic
AGBD
RESPOSTA 1
SELECT TITULOFROM LIVRO
INNER JOIN ASSUNTOON ASSUNTO = SIGLA
WHERE DESCRICAO = ‘BANCO DE DADOS’UNIONSELECT TITULOFROM LIVRO
INNER JOIN EDITORA EON EDITORA = E.CODIGO
WHERE NOME LIKE ‘%MIRANDELA%’
TITULO
BANCO DE DADOS NA BIOINFORMÁTICABANCO DE DADOS PARA WEBPROGRAMANDO EM LINGUAGEM C
![Page 9: Prof. Rebecca Arambasic AGBD LPBD Pesquisa avançada UNION / INTERSECT / EXCEPT Aula 1 / 2010.](https://reader036.fdocumentos.com/reader036/viewer/2022082901/570638481a28abb8238f4295/html5/thumbnails/9.jpg)
Prof. Rebecca Arambasic
AGBD
RESPOSTA 2
SELECT TITULOFROM LIVRO
INNER JOIN ASSUNTOON ASSUNTO = SIGLA
WHERE DESCRICAO = ‘BANCO DE DADOS’UNION ALLSELECT TITULOFROM LIVRO
INNER JOIN EDITORA EON EDITORA = E.CODIGO
WHERE NOME LIKE ‘%MIRANDELA%’
TITULOBANCO DE DADOS PARA WEBBANCO DE DADOS PARA WEBPROGRAMANDO EM LINGUAGEM CBANCO DE DADOS NA BIOINFORMÁTICA
![Page 10: Prof. Rebecca Arambasic AGBD LPBD Pesquisa avançada UNION / INTERSECT / EXCEPT Aula 1 / 2010.](https://reader036.fdocumentos.com/reader036/viewer/2022082901/570638481a28abb8238f4295/html5/thumbnails/10.jpg)
Prof. Rebecca Arambasic
AGBD
INTERSECÇÃO
• Para obtermos a intersecção entre os resultados de comandos SELECT utilizamos o predicado INTERSECT.
• INTERSECT retornará as linhas que estejam preesente nos resultados de todas as cosultas participantes.
• Retornará as linhas que estejam presentes nos resultados de todas as colunas participantes.
![Page 11: Prof. Rebecca Arambasic AGBD LPBD Pesquisa avançada UNION / INTERSECT / EXCEPT Aula 1 / 2010.](https://reader036.fdocumentos.com/reader036/viewer/2022082901/570638481a28abb8238f4295/html5/thumbnails/11.jpg)
Prof. Rebecca Arambasic
AGBD
REGRAS
– Os comandos devem retornar o mesmo número de colunas
– As colunas correspondentes em cada comando devem possuir os mesmos tipos de dados.
![Page 12: Prof. Rebecca Arambasic AGBD LPBD Pesquisa avançada UNION / INTERSECT / EXCEPT Aula 1 / 2010.](https://reader036.fdocumentos.com/reader036/viewer/2022082901/570638481a28abb8238f4295/html5/thumbnails/12.jpg)
Prof. Rebecca Arambasic
AGBD
EXERCÍCIO
• Listar os títulos dos livros cujo assunto é ‘Programando’ e que foram lançados por uma editora que contenha a palavra ‘Mirandela’ no nome, sem repetições.
![Page 13: Prof. Rebecca Arambasic AGBD LPBD Pesquisa avançada UNION / INTERSECT / EXCEPT Aula 1 / 2010.](https://reader036.fdocumentos.com/reader036/viewer/2022082901/570638481a28abb8238f4295/html5/thumbnails/13.jpg)
Prof. Rebecca Arambasic
AGBD
RESPOSTA
SELECT TITULOFROM LIVRO
INNER JOIN ASSUNTOON ASSUNTO = SIGLA
WHERE DESCRICAO = ‘PROGRAMANDO’INTERSECTSELECT TITULOFROM LIVRO
INNER JOIN EDITORA EON EDITORA = E.CODIGO
WHERE NOME LIKE ‘%MIRANDELA%’
TITULO
PROGRAMANDO EM LINGUAGEM C
![Page 14: Prof. Rebecca Arambasic AGBD LPBD Pesquisa avançada UNION / INTERSECT / EXCEPT Aula 1 / 2010.](https://reader036.fdocumentos.com/reader036/viewer/2022082901/570638481a28abb8238f4295/html5/thumbnails/14.jpg)
Prof. Rebecca Arambasic
AGBD
DIFERENÇA
• Também é possível realizar diferenç entre os resultados de comandos SELECT. Neste caso o predicado utilizado é o EXCEPT.
• EXCEPT nã permite linhas repetidas no resultado final.
![Page 15: Prof. Rebecca Arambasic AGBD LPBD Pesquisa avançada UNION / INTERSECT / EXCEPT Aula 1 / 2010.](https://reader036.fdocumentos.com/reader036/viewer/2022082901/570638481a28abb8238f4295/html5/thumbnails/15.jpg)
Prof. Rebecca Arambasic
AGBD
EXERCÍCIO
• Listar os títulos dos livros cujo assunto é ‘Banco de Dados’ e que não foram lançados por editoras que contenham ‘Mirandela’ no nome.
![Page 16: Prof. Rebecca Arambasic AGBD LPBD Pesquisa avançada UNION / INTERSECT / EXCEPT Aula 1 / 2010.](https://reader036.fdocumentos.com/reader036/viewer/2022082901/570638481a28abb8238f4295/html5/thumbnails/16.jpg)
Prof. Rebecca Arambasic
AGBD
RESPOSTA
SELECT TITULOFROM LIVRO
INNER JOIN ASSUNTOON ASSUNTO = SIGLA
WHERE DESCRICAO = ‘PROGRAMANDO’EXCEPTSELECT TITULOFROM LIVRO
INNER JOIN EDITORA EON EDITORA = E.CODIGO
WHERE NOME LIKE ‘%MIRANDELA%’
TITULO
BANCO DE DADOS NA BIOINFORMÁTICA
![Page 17: Prof. Rebecca Arambasic AGBD LPBD Pesquisa avançada UNION / INTERSECT / EXCEPT Aula 1 / 2010.](https://reader036.fdocumentos.com/reader036/viewer/2022082901/570638481a28abb8238f4295/html5/thumbnails/17.jpg)
Prof. Rebecca Arambasic
AGBD
EXERCÍCIO 2
• Listar os títulos dos livros que foram lançados por editoras que contenham ‘Mirandela’ em seu nome e cujo assunto não é ‘Banco de Dados’.
![Page 18: Prof. Rebecca Arambasic AGBD LPBD Pesquisa avançada UNION / INTERSECT / EXCEPT Aula 1 / 2010.](https://reader036.fdocumentos.com/reader036/viewer/2022082901/570638481a28abb8238f4295/html5/thumbnails/18.jpg)
Prof. Rebecca Arambasic
AGBD
RESPOSTA
SELECT TITULOFROM LIVRO
INNER JOIN EDITORA EON EDITORA = E.CODIGO
WHERE NOME LIKE ‘%MIRANDELA%’EXCEPTSELECT TITULOFROM LIVRO
INNER JOIN ASSUNTOON ASSUNTO = SIGLA
WHERE DESCRICAO = ‘BANCO DE DADOS’
TITULO
PROGRAMANDO EM LINGUAGEM C
![Page 19: Prof. Rebecca Arambasic AGBD LPBD Pesquisa avançada UNION / INTERSECT / EXCEPT Aula 1 / 2010.](https://reader036.fdocumentos.com/reader036/viewer/2022082901/570638481a28abb8238f4295/html5/thumbnails/19.jpg)
Prof. Rebecca Arambasic
AGBDPRÁTICA LABORATÓRIOPRÁTICA LABORATÓRIO UNION / INTERSECT / EXCEPT
1. Escreva o comando SQL que retorna uma listagem contendo os nomes das editoras que lançam apenas livros cujo assunto é ‘Banco de Dados’.
![Page 20: Prof. Rebecca Arambasic AGBD LPBD Pesquisa avançada UNION / INTERSECT / EXCEPT Aula 1 / 2010.](https://reader036.fdocumentos.com/reader036/viewer/2022082901/570638481a28abb8238f4295/html5/thumbnails/20.jpg)
Prof. Rebecca Arambasic
AGBD
Referências:
• Livros da Bibliografia.• SQL: guia prático 2ed.– Rogério Luis de C
Costa.Rio de Janeiro: BRASPORT, 2006