GES013 - Sistema de Banco de Dados SQL/DML no PostgreSQL Parte 2 Consultas Aninhaas

Tamanho: px
Começar a partir da página:

Download "GES013 - Sistema de Banco de Dados SQL/DML no PostgreSQL Parte 2 Consultas Aninhaas"

Transcrição

1 GES013 - Sistema de Banco de Dados SQL/DML no PostgreSQL Parte 2 Consultas Aninhaas Ilmério Reis da Silva ilmerio arroba ufu.br UFU/FACOM/BCC

2 SQL/DML Parte 2 Consultas Aninhadas e Comparação com Conjuntos UFU/FACOM Página 2

3 SQL/DML- Cláusula IN (pertinência) A consulta Q4 abaixo pode ser reformulada, removendo a cláusula UNION e incluindo a cláusula IN Q4) Listar todos os números de projetos que envolvam um empregado cujo último nome é Smith sendo que o empregado deve ser trabalhador ou gerente do departamento que controla o projeto. (SELECT DISTINCT pnumber FROM project, department, employee WHERE dnum=dnumber AND msgrssn=ssn AND lname= Smith ) UNION (SELECT DISTINCT pnumber FROM project, works_on, employee WHERE pno=pnumber AND essn=ssn AND lname= Smith ) UFU/FACOM Página 3

4 UFU/FACOM Página 4 SQL/DML Exemplo Q4a SELECT DISTINCT pnumber FROM project WHERE pnumber IN (SELECT pnumber FROM project, department, employee WHERE dnum=dnumber AND mgrssn=ssn AND lname= Smith ) OR pnumber IN (SELECT pno FROM works on,employee WHERE essn=ssn AND lname= Smith );

5 UFU/FACOM Página 5 SQL/DML Comparando conjuntos com ALL, ANY ou SOME Outras cláusulas para comparação de conjuntos: ALL ANY ou SOME (são sinônimos) Ex: salary > ALL (SELECT salary FROM...); salary < ANY (SELECT salary FROM...); salary > SOME (SELECT salary FROM...);

6 UFU/FACOM Página 6 SQL/DML Ambiguidade em consultas aninhadas (apelidos de tabelas) Q16) Listar o nome dos empregados com dependente(s) de mesmo first name e sexo que o empregado

7 UFU/FACOM Página 7 SQL/DML Exemplo Q16 Q16) Listar o nome dos empregados com dependente(s) de mesmo first name e sexo que o empregado SELECT e.fname,e.lname FROM employee as e WHERE e.ssn IN (SELECT essn FROM dependent as d WHERE fname=dependent_name AND e.sex=d.sex);

8 SQL/DML Substituindo subconsulta por junção UFU/FACOM Página 8 Q16a) Listar o nome dos empregados com dependente(s) de mesmo first name e sexo que o empregado SELECT e.fname,e.lname FROM employee as e, dependent as d WHERE ssn=essn AND fname=dependent_name AND e.sex=d.sex);

9 UFU/FACOM Página 9 SQL/DML Q16b - FUNÇÃO EXISTS - consultas aninhadas correlacionadas Q16b) Listar o nome dos empregados com dependente(s) de mesmo first name e sexo que o empregado SELECT e.fname,e.lname FROM employee as e WHERE EXISTS (SELECT * FROM dependent d WHERE e.ssn=d.essn AND e.fname=d.dependent_name AND e.sex=d.sex);

10 UFU/FACOM Página 10 SQL/DML FUNÇÃO NOT EXISTS - consultas aninhadas correlacionadas Q6) Listar os nomes de empregados sem dependentes

11 UFU/FACOM Página 11 SQL/DML Exemplo Q6 Q6) Listar os nomes de empregados sem dependentes SELECT fname,lname FROM employee WHERE NOT EXISTS (SELECT * FROM dependent WHERE ssn=essn);

12 UFU/FACOM Página 12 SQL/DML Aninhamento em dois níveis Q3b) Listar o nome dos empregados que trabalham em todos os projetos controlados pelo departamento número 4 OBS: Observe a expressão todos no enunciado da consulta. Em SQL consultas desse tipo (divisão da Álgebra Relacional) podem ser especificadas de diversas formas.

13 UFU/FACOM Página 13 SQL/DML Divisão com duplo NOT EXISTS Q3b) Listar o nome dos empregados que trabalham em todos os projetos controlados pelo departamento número 4 SELECT lname, fname FROM employee WHERE NOT EXISTS (SELECT * FROM project WHERE dnum=4 AND NOT EXISTS (SELECT * FROM works_on WHERE essn=ssn AND pnumber=pno));

14 UFU/FACOM Página 14 SQL/DML Alternativas para divisão Alternativas de especificação de divisão em SQL: Usando cláusulas NOT EXISTS e IN Usando cláusula NOT EXISTS e EXCEPT Usando cláusula FOREACH e EXISTS(não implementada no PostgreSql 8.3)

15 UFU/FACOM Página 15 SQL/DML - divisão com NOT EXISTS e IN SELECT lname, fname FROM employee WHERE NOT EXISTS (SELECT * FROM works_on w1 WHERE (w1.pno IN (SELECT pnumber FROM project WHERE dnum=4)) AND NOT EXISTS (SELECT * FROM works_on w2 WHERE w2.essn=ssn AND w2.pno=w1.pno));

16 UFU/FACOM Página 16 SQL/DML-divisão- NOT EXISTS e EXCEPT SELECT lname, fname FROM employee e WHERE NOT EXISTS (SELECT pnumber FROM project WHERE dnum=4 EXCEPT (SELECT pno FROM works_on w WHERE w.essn=e.ssn))

17 UFU/FACOM Página 17 SQL/DML divisão - FOREACH e EXISTS SELECT lname, fname FROM employee WHERE FOREACH (SELECT pnumber FROM project WHERE dnum=4) EXISTS (SELECT * FROM works_on WHERE essn=ssn AND pno=pnumber)); ATENÇÃO: este comando não funciona no PostgreSql 8.3

18 SQL/DML e o PostgreSQL EXERCÍCIOS DE IMPLEMENTAÇÃO => Lab Exemplos de consultas aninhadas no esquema company => Lab - Lista de exercícios UFU/FACOM Página 18

19 UFU/FACOM Página 19 Bibliografia [EN] Capítulos 4,5 [SK] Capítulos 3,4,5 [RG] Capítulos 5 [IRS] Material de Apoio na página da disciplina

20 FIM SQL/DML e o PostgreSQL FIM SQL/DML e o PostgreSQL Parte 2 Consultas Aninhadas UFU/FACOM Página 20

GES013 - Sistema de Banco de Dados SQL/DML no PostgreSQL Parte 1 Introdução e Consultas Basicas

GES013 - Sistema de Banco de Dados SQL/DML no PostgreSQL Parte 1 Introdução e Consultas Basicas GES013 - Sistema de Banco de Dados SQL/DML no PostgreSQL Parte 1 Introdução e Consultas Basicas Ilmério Reis da Silva ilmerio arroba ufu.br www.facom.ufu.br/~ilmerio/sbd UFU/FACOM/BCC UFU/FACOM Página

Leia mais

GES013 - Sistema de Banco de Dados SQL/DML no PostgreSQL Parte 3 Tabelas de Junção e Funções de Agregação

GES013 - Sistema de Banco de Dados SQL/DML no PostgreSQL Parte 3 Tabelas de Junção e Funções de Agregação GES013 - Sistema de Banco de Dados SQL/DML no PostgreSQL Parte 3 Tabelas de Junção e Funções de Agregação Ilmério Reis da Silva ilmerio arroba ufu.br www.facom.ufu.br/~ilmerio/sbd UFU/FACOM/BCC UFU/FACOM

Leia mais

GBC043 - Sistemas de Banco de Dados SQL/DML no PostgreSQL. Ilmério Reis da Silva ilmerio@facom.ufu.br www.facom.ufu.br/~ilmerio/sbd UFU/FACOM/BCC

GBC043 - Sistemas de Banco de Dados SQL/DML no PostgreSQL. Ilmério Reis da Silva ilmerio@facom.ufu.br www.facom.ufu.br/~ilmerio/sbd UFU/FACOM/BCC GBC043 - Sistemas de Banco de Dados SQL/DML no PostgreSQL Ilmério Reis da Silva ilmerio@facom.ufu.br www.facom.ufu.br/~ilmerio/sbd UFU/FACOM/BCC Página 2 Prgrama Teórico/Prático - SQL Linguagem SQL Comandos

Leia mais

L Q S m e g a u g n Li A

L Q S m e g a u g n Li A A Linguagem SQL Introdução Originalmente proposta para o System R desenvolvido nos laboratórios da IBM na década de 70 SEQUEL (Structured English QUEry Language) Objeto de um esforço de padronização coordenado

Leia mais

Processamento e Otimização de Consultas

Processamento e Otimização de Consultas Processamento e Otimização de Consultas Processo de Execução de uma Consulta 1 Otimização de Consultas SQL Em algumas linguagens de consulta, a estratégia de execução é definida pela maneira como o usuário

Leia mais

DCC011 Introdução a Banco de Dados

DCC011 Introdução a Banco de Dados DCC011 Introdução a Banco de Dados SQL select avançado Mirella M. Moro Departamento de Ciência da Computação Universidade Federal de Minas Gerais mirella@dcc.ufmg.br Revisão: consultas básicas Formato

Leia mais

Oscar Luiz Monteiro de Farias 1. Bancos de Dados. Mestrado em Engenharia de Computação área de concentração Geomática

Oscar Luiz Monteiro de Farias 1. Bancos de Dados. Mestrado em Engenharia de Computação área de concentração Geomática Oscar Luiz Monteiro de Farias 1 Bancos de Dados Mestrado em Engenharia de Computação área de concentração Geomática Oscar Luiz Monteiro de Farias 2 Structured Query Language (SQL)... Linguagem de Banco

Leia mais

A Linguagem SQL. Introdução a Banco de Dados DCC 011

A Linguagem SQL. Introdução a Banco de Dados DCC 011 A Linguagem SQL Introdução Originalmente proposta para o System R desenvolvido nos laboratórios da IBM na década de 70 SEQUEL (Structured English QUEry Language) Objeto de um esforço de padronização coordenado

Leia mais

GES013 Sistema de Banco de Dados. Modelo Relacional (R) Ilmério Reis da Silva ilmerio arroba ufu.br UFU/FACOM

GES013 Sistema de Banco de Dados. Modelo Relacional (R) Ilmério Reis da Silva ilmerio arroba ufu.br  UFU/FACOM GES013 Sistema de Banco de Dados Modelo Relacional (R) Ilmério Reis da Silva ilmerio arroba ufu.br www.facom.ufu.br/~ilmerio/sbd UFU/FACOM UFU/FACOM Página 2 Modelo Relacional R : Definição Def. O MODELO

Leia mais

Modelo de Dados Relacional

Modelo de Dados Relacional Modelo de Dados Relacional Introdução O modelo relacional representa um banco de dados como um conjunto de relações Informalmente, uma relação é uma tabela de valores, onde cada linha representa uma coleção

Leia mais

GES013 - Sistema de Banco de Dados SQL DDL e Implementação no PostgreSQL

GES013 - Sistema de Banco de Dados SQL DDL e Implementação no PostgreSQL GES013 - Sistema de Banco de Dados SQL DDL e Implementação no PostgreSQL Ilmério Reis da Silva ilmerio arroba ufu.br www.facom.ufu.br/~ilmerio/sbd UFU/FACOM/BCC SQL Def. A SQL(Structured Query Language)

Leia mais

Álgebra Relacional. Programa. Modelos de Dados. LCs relacionais formais. Introdução

Álgebra Relacional. Programa. Modelos de Dados. LCs relacionais formais. Introdução Programa DCC011 Introdução a Banco de Dados Álgebra Relacional Mirella M. Moro Departamento de Ciência da Computação Universidade Federal de Minas Gerais mirella@dcc.ufmg.br Introdução Conceitos básicos,

Leia mais

GBC043 - Sistemas de Banco de Dados Lab8 : Transações no PostgreSql

GBC043 - Sistemas de Banco de Dados Lab8 : Transações no PostgreSql GBC043 - Sistemas de Banco de Dados Lab8 : Transações no PostgreSql Ilmério Reis da Silva ilmerio@facom.ufu.br www.facom.ufu.br/~ilmerio/sbd UFU/FACOM/BCC Transações Ver conjunto de slides na opção Transações

Leia mais

SQL-99: Esquema de BD EMPRESA

SQL-99: Esquema de BD EMPRESA SQL-99: Esquema de BD EMPRESA SQL-99: Instâncias do esquema EMPRESA 1 Consultas externa, aninhada e correlacionada para cada tupla da consulta externa, a consulta aninhada devolve o atributo solicitado

Leia mais

BANCO DE DADOS II Conceitos Básicos. COTEMIG Gerson Borges

BANCO DE DADOS II Conceitos Básicos. COTEMIG Gerson Borges BANCO DE DADOS II Conceitos Básicos COTEMIG Gerson Borges gerson@cotemig.com.br Revisão O que é um banco de dados? Definições Preliminares [Chu, 1985] Um banco de dados é um conjunto de arquivos relacionados

Leia mais

Professor Eros Moura, DSc

Professor Eros Moura, DSc Professor Eros Moura, DSc Nesse capítulo: Operadores de Conjunto Construtor de Linha Operador BETWEEN Operador LIKE 2016 Ifes - Campus Cachoeiro de Itapemirim Eros Moura - Banco de Dados 2 Operador de

Leia mais

DCC011 Introdução a Banco de Dados

DCC011 Introdução a Banco de Dados Programa DCC011 Introdução a Banco de Dados SQL select Mirella M. Moro Departamento de Ciência da Computação Universidade Federal de Minas Gerais mirella@dcc.ufmg.br Introdução Conceitos básicos, características

Leia mais

SQL Uma Visão mais Ampla

SQL Uma Visão mais Ampla SQL Uma Visão mais Ampla Banco de Dados Modelo Entidade-Relacionamento n possui 1 1 oferece n filial_nro filial_local filial_data_abertura cli_codigo cli_nome cli_telefone m aluga n FILIAL 1 cadastra n

Leia mais

Aula 10 BD 1 SQL Parte 2. Profa. Elaine Faria UFU

Aula 10 BD 1 SQL Parte 2. Profa. Elaine Faria UFU Aula 10 BD 1 SQL Parte 2 Profa. Elaine Faria UFU - 2018 Consultas Aninhadas É um dos recursos mais poderosos da SQL É aquela que tem outra consulta embutida dentro dela A consulta embutida é chamada de

Leia mais

UTFPR - Universidade Tecnológica Federal do Paraná. Processamento e otimização de consultas

UTFPR - Universidade Tecnológica Federal do Paraná. Processamento e otimização de consultas UTFPR - Universidade Tecnológica Federal do Paraná Processamento e otimização de consultas Leyza Baldo Dorini 04/Nov/2009 Programação da aula Introdução: processamento e otimização de consultas Etapas:

Leia mais

Banco de Dados Notas de Aula Consultas em SQL Prof. Dr. Daniel A. Furtado

Banco de Dados Notas de Aula Consultas em SQL Prof. Dr. Daniel A. Furtado Banco de Dados Notas de Aula Consultas em SQL Prof. Dr. Daniel A. Furtado Forma geral: SELECT FROM [WHERE ] [GROUP BY ]

Leia mais

SQL Uma Visão mais Ampla

SQL Uma Visão mais Ampla SQL Uma Visão mais Ampla Banco de Dados Modelo Entidade-Relacionamento n possui 1 1 oferece n filial_nro filial_local filial_data_abertura cli_codigo cli_nome cli_telefone m aluga n FILIAL 1 cadastra n

Leia mais

Banco de Dados I. Aula 16 - Prof. Bruno Moreno 04/11/2011

Banco de Dados I. Aula 16 - Prof. Bruno Moreno 04/11/2011 Banco de Dados I Aula 16 - Prof. Bruno Moreno 04/11/2011 Plano de Aula O comando DELETE Cláusula CHECK Comparações utilizando NULL Funções agregadas Junções de tabelas em SQL Visões Comando DELETE DELETE

Leia mais

GES013 - Sistema de Banco de Dados Funções e Gatilhos no PostgreSQL

GES013 - Sistema de Banco de Dados Funções e Gatilhos no PostgreSQL GES013 - Sistema de Banco de Dados Funções e Gatilhos no PostgreSQL Ilmério Reis da Silva ilmerio arroba ufu.br www.facom.ufu.br/~ilmerio/sbd UFU/FACOM/BCC UFU/FACOM Página 2 SQL EM FUNÇÕES E GATILHOS

Leia mais

GBC043 Sistemas de Banco de Dados Álgebra e Cálculo Relacional. Ilmério Reis da Silva UFU/FACOM

GBC043 Sistemas de Banco de Dados Álgebra e Cálculo Relacional. Ilmério Reis da Silva  UFU/FACOM GBC043 Sistemas de Banco de Dados Álgebra e Cálculo Relacional Ilmério Reis da Silva ilmerio@facom.ufu.br www.facom.ufu.br/~ilmerio/sbd UFU/FACOM Álgebra e Cálculo Relacional e o Modelo R São as linguagens

Leia mais

ÁLGEBRA E CÁLCULO RELACIONAL

ÁLGEBRA E CÁLCULO RELACIONAL UNINGÁ UNIDADE DE ENSINO SUPERIOR INGÁ FACULDADE INGÁ DEPARTAMENTO DE CIÊNCIA DA COMPUTAÇÃO ERINALDO SANCHES NASCIMENTO ÁLGEBRA E CÁLCULO RELACIONAL MARINGÁ 2014 SUMÁRIO SUMÁRIO...1 1 INTRODUÇÃO...2 1.1

Leia mais

GES013 Sistema de Banco de Dados Normalização de Relações em Projeto de BD (1FN a FNBC)

GES013 Sistema de Banco de Dados Normalização de Relações em Projeto de BD (1FN a FNBC) GES013 Sistema de Banco de Dados Normalização de Relações em Projeto de BD (1FN a FNBC) Ilmério Reis da Silva ilmerio arroba ufu.br www.facom.ufu.br/~ilmerio/sbd UFU/FACOM Página:2 Projeto de BD Relacionais

Leia mais

Banco de Dados Prof. Célio R. Castelano Página 1 de 9. Álgebra Relacional

Banco de Dados Prof. Célio R. Castelano Página 1 de 9. Álgebra Relacional Banco de Dados Prof. Célio R. Castelano Página 1 de 9 Álgebra Relacional A álgebra relacional é uma linguagem procedural, que possui uma coleção de operações que são utilizadas para manipular relações

Leia mais

DCC011 Introdução a Banco de Dados SQL gerenciar tabelas e dados

DCC011 Introdução a Banco de Dados SQL gerenciar tabelas e dados DCC011 Introdução a Banco de Dados SQL gerenciar tabelas e dados Mirella M. Moro Departamento de Ciência da Computação Universidade Federal de Minas Gerais mirella@dcc.ufmg.br Programa Introdução Conceitos

Leia mais

BANCO DE DADOS II SQL Básico. COTEMIG Gerson Borges

BANCO DE DADOS II SQL Básico. COTEMIG Gerson Borges BANCO DE DADOS II SQL Básico COTEMIG Gerson Borges gerson@cotemig.com.br Definição de Banco de Dados [Elmasri & Navathe, 2000] Um banco de dados é uma coleção de dados relacionados Representando algum

Leia mais

GBC043 Sistemas de Banco de Dados. Modelo Relacional (R) Ilmério Reis da Silva ilmerio@facom.ufu.br www.facom.ufu.br/~ilmerio/sbd UFU/FACOM

GBC043 Sistemas de Banco de Dados. Modelo Relacional (R) Ilmério Reis da Silva ilmerio@facom.ufu.br www.facom.ufu.br/~ilmerio/sbd UFU/FACOM GBC043 Sistemas de Banco de Dados Modelo Relacional (R) Ilmério Reis da Silva ilmerio@facom.ufu.br www.facom.ufu.br/~ilmerio/sbd UFU/FACOM UFU/FACOM Página 2 Modelo Relacional R : Definição Def. O MODELO

Leia mais

A Linguagem SQL. Introdução a Banco de Dados DCC 011

A Linguagem SQL. Introdução a Banco de Dados DCC 011 A Linguagem SQL Introdução Originalmente proposta para o System R desenvolvido nos laboratórios da IBM na década de 70 SEQUEL (Structured English QUEry Language) Objeto de um esforço de padronização coordenado

Leia mais

- SQL Linguagem de Manipulação de Dados

- SQL Linguagem de Manipulação de Dados - SQL Linguagem de Manipulação de Dados Laboratório de Bases de Dados Profa. Dra. Cristina Dutra de Aguiar Ciferri SELECT SELECT FROM [ WHERE predicado

Leia mais

DCC011 Introdução a Banco de Dados

DCC011 Introdução a Banco de Dados Programa DCC011 Introdução a Banco de Dados SQL select Mirella M. Moro Departamento de Ciência da Computação Universidade Federal de Minas Gerais mirella@dcc.ufmg.br Introdução Conceitosbásicos, característicasda

Leia mais

GBC043 - Sistemas de Banco de Dados SQL DDL e Implementação no PostgreSQL

GBC043 - Sistemas de Banco de Dados SQL DDL e Implementação no PostgreSQL GBC043 - Sistemas de Banco de Dados SQL DDL e Implementação no PostgreSQL Ilmério Reis da Silva ilmerio@facom.ufu.br www.facom.ufu.br/~ilmerio/sbd UFU/FACOM/BCC Página 2 Programa Teórico Visão Panorâmica

Leia mais

Rápida revisão do Modelo Relacional

Rápida revisão do Modelo Relacional Rápida revisão do Modelo Relacional Conceito de relação Tuplas e atributos Rápida revisão do Modelo Relacional Regras de integridade Entidade: Deve existir uma chave primária com valor único e não-nulo.

Leia mais

SQL Linguagem de Manipulação de Dados SQL DML SQL DML. Exemplo Modelo Relacional. Exemplo ME-R SQL DML CONTINUAÇÃO...

SQL Linguagem de Manipulação de Dados SQL DML SQL DML. Exemplo Modelo Relacional. Exemplo ME-R SQL DML CONTINUAÇÃO... Ciência da Computação GBC043 Sistemas de Banco de Dados SQL Linguagem de Manipulação de Dados Profa. Maria Camila Nardini Barioni camila.barioni@facom.ufu.br Bloco B - sala 1B137 SQL DML CONTINUAÇÃO...

Leia mais

Subconsultas ou Consultas Aninhadas

Subconsultas ou Consultas Aninhadas Subconsultas ou Consultas Aninhadas Forma alternativa de especificar consultas envolvendo relacionamentos entre tabelas Otimização filtragens prévias de dados na subconsulta apenas tuplas/atributos de

Leia mais

Avisos. SQL: Visões. Roteiro SELECT. Suporte de SQL para OLAP SQL DML CONTINUAÇÃO CONSULTAS AVANÇADAS. Cronograma das próximas aulas

Avisos. SQL: Visões. Roteiro SELECT. Suporte de SQL para OLAP SQL DML CONTINUAÇÃO CONSULTAS AVANÇADAS. Cronograma das próximas aulas Ciência da Computação GBC043 Sistemas de Banco de Dados Avisos SQL: Visões Profa. Maria Camila Nardini Barioni camila.barioni@ufu.br Bloco B - sala 1B137 1 semestre de 2019 Cronograma das próximas aulas

Leia mais

Consulta sobre múltiplas relações

Consulta sobre múltiplas relações Consulta sobre múltiplas relações BCD29008 Engenharia de Telecomunicações Prof. Emerson Ribeiro de Mello http://docente.ifsc.edu.br/mello/bcd 25 DE ABRIL DE 2019 Esquema usado nos próximos exemplos 1/36

Leia mais

- Um "query block" permite a implementação das operações de selecção, projecção e junção da álgebra relacional.

- Um query block permite a implementação das operações de selecção, projecção e junção da álgebra relacional. 2.3 Linguagens relacionais (continuação) SQL Structured Query Language 1) "Query block" Select From Where - Um "query block" permite a implementação

Leia mais

Introdução a. π LNAME, FNAME (σ SALARY>C (EMPLOYEE))

Introdução a. π LNAME, FNAME (σ SALARY>C (EMPLOYEE)) Introdução Como o SGBD INTERNAMENTO processa, otimiza e executa consultas de alto nível Introdução a Processamento de Consultas MIRELLA M. MORO mirella@dcc.ufmg.br http://www.dcc.ufmg.br/ br/~mirella 2

Leia mais

saída durante o runtime Usando Functions de uma Única Linha para Personalizar Relatórios Mostrar as diferenças entre as functions SQL de uma única

saída durante o runtime Usando Functions de uma Única Linha para Personalizar Relatórios Mostrar as diferenças entre as functions SQL de uma única Tópicos do Curso: Introdução Listar os principais recursos do Banco de Dados Oracle 10g Apresentar uma visão geral de: componentes, plataforma de internet, servidor de aplicações e suite do desenvolvedor

Leia mais

Esquema Empresa. departamento (num, nome, identger, dataini) PK=(num) dependente (identemp, nome, sexo, datanasc, parentesco) PK=(identemp, nome)

Esquema Empresa. departamento (num, nome, identger, dataini) PK=(num) dependente (identemp, nome, sexo, datanasc, parentesco) PK=(identemp, nome) Esquema Empresa departamento (num, nome, identger, dataini PK=(num dependente (identemp, nome, sexo, datanasc, parentesco PK=(identemp, nome deploc (depnum, local PK=(depnum, local empregado (ident, nome,

Leia mais

ALGEBRA RELACIONAL. Álgebra Relacional Conjunto básico de operações para o Modelo Relacional O resultado é uma relação

ALGEBRA RELACIONAL. Álgebra Relacional Conjunto básico de operações para o Modelo Relacional O resultado é uma relação 1/5 Universidade Federal da Bahia Disciplina: Banco de Dados Prof a. Daniela Barreiro Claro ALGEBRA RELACIONAL Duas linguagens formais do Modelo Relacional o Álgebra Relacional e Cálculo Relacional Álgebra

Leia mais

Projeto de Banco de Dados

Projeto de Banco de Dados Projeto de Banco de Dados Laboratório de Banco de Dados Prof. Luiz Antônio Vivacqua C. Meyer (luiz.vcm@gmail.com) Sintaxe Geral SELECT [ALL/DISTINCT] coluna1, coluna2,..., colunan FROM nome_tabela1, nome_tabela2,...,

Leia mais

Banco de Dados I. Aula 14 - Prof. Bruno Moreno 11/10/2011

Banco de Dados I. Aula 14 - Prof. Bruno Moreno 11/10/2011 Banco de Dados I Aula 14 - Prof. Bruno Moreno 11/10/2011 Plano de Aula INSERT UPDATE SELECT-FROM-WHERE Uso de ALIASES SELECT com * DISTINCT Operações de Conjuntos Comparação entre substrings Operadores

Leia mais

Fundamentos de Bases de Dados e-fólio A Resolução e Critérios de Correção

Fundamentos de Bases de Dados e-fólio A Resolução e Critérios de Correção 21053 - Fundamentos de Bases de Dados 2014-2015 e-fólio A Resolução e Critérios de Correção PARA A RESOLUÇÃO DO E-FÓLIO, ACONSELHA-SE QUE LEIA ATENTAMENTE O SEGUINTE: 1) O e-fólio é constituído por 2 perguntas,

Leia mais

SISTEMAS DE BANCO DE DADOS. Prof. Adriano Pereira Maranhão

SISTEMAS DE BANCO DE DADOS. Prof. Adriano Pereira Maranhão SISTEMAS DE BANCO DE DADOS Prof. Adriano Pereira Maranhão 1 SQL Structured Query Language SQL Desenvolvida pela IBM Structured English Query Language Sequel Linguagem de consulta para o sistema R Primeiro

Leia mais

ORACLE 11 G INTRODUÇÃO AO ORACLE, SQL,PL/SQL

ORACLE 11 G INTRODUÇÃO AO ORACLE, SQL,PL/SQL ORACLE 11 G INTRODUÇÃO AO ORACLE, SQL,PL/SQL Objetivo: No curso Oracle 11G Introdução ao Oracle, SQL, PL/SQL será abordado desde a introdução da tecnologia do banco de dados em questão como todos os conceitos

Leia mais

Unipar Universidade Paranaense Disciplina: Banco de Dados II 3ª Série Profª: Késsia Marchi Profa. Késsia Marchi

Unipar Universidade Paranaense Disciplina: Banco de Dados II 3ª Série Profª: Késsia Marchi Profa. Késsia Marchi Banco de Dados II Unipar Universidade Paranaense Disciplina: Banco de Dados II 3ª Série Profª: Késsia Marchi Álgebra Relacional Linguagem de consulta procedural; Consiste em um conjunto básico de operações,

Leia mais

Consultas SQL. Andre Noel

Consultas SQL. Andre Noel Consultas SQL Andre Noel Introdução Introdução Uma distinção entre SQL e o modelo relacional: SQL permite que uma tabela tenha duas ou mais tuplas iguais Introdução Uma distinção entre SQL e o modelo relacional:

Leia mais

BASES DE DADOS I LTSI/2. Universidade da Beira Interior, Departamento de Informática Hugo Pedro Proença, 2010/2011

BASES DE DADOS I LTSI/2. Universidade da Beira Interior, Departamento de Informática Hugo Pedro Proença, 2010/2011 BASES DE DADOS I LTSI/2 Universidade da Beira Interior, Departamento de Informática Hugo Pedro Proença, 2010/2011 Ao nível das linguagens de manipulação de dados (Data Manipulation Language - DML) o SQL

Leia mais

select nome from Médicos where codm in (select codm from Consultas where data = 06/06/13 )

select nome from Médicos where codm in (select codm from Consultas where data = 06/06/13 ) Subconsultas * subconsulta: forma alternativa de expressar consultas envolvendo relacionamentos entre tabelas * cláusulas para tratamento de subconsultas: IN, ANY, ALL, EXISTS 3.1) Cláusula [NOT] IN *

Leia mais

SQL PostgreSQL. I Criação de Tabelas. Disciplina: SCC0241 Bases de Dados Professor: Eduardo Hruschka Estagiária PAE: Dayse de Almeida

SQL PostgreSQL. I Criação de Tabelas. Disciplina: SCC0241 Bases de Dados Professor: Eduardo Hruschka Estagiária PAE: Dayse de Almeida SQL PostgreSQL I Criação de Tabelas Disciplina: SCC0241 Bases de Dados Professor: Eduardo Hruschka Estagiária PAE: Dayse de Almeida Composição da SQL Linguagem de Definição de Dados (DDL): Comandos para

Leia mais

Sumário SELECT + FROM

Sumário SELECT + FROM Sumário 1 Introdução SQL - Perguntas André Restivo Faculdade de Engenharia da Universidade do Porto October 18, 2010 2 3 Operadores de Conjuntos 4 5 Agregações 6 Ordenações e Limites 7 Sub-perguntas 8

Leia mais

SQL-99: Definição de esquema, restrições básicas e consultas

SQL-99: Definição de esquema, restrições básicas e consultas SQL-99: Definição de esquema, restrições básicas e consultas A linguagem SQL é uma das maiores razões para o sucesso dos BD relacionais no mundo comercial Este capítulo apresenta as principais funcionalidades

Leia mais

Banco de Dados I. Prof. Diego Buchinger. Profa. Rebeca Schroeder Freitas Prof. Fabiano Baldo.

Banco de Dados I. Prof. Diego Buchinger. Profa. Rebeca Schroeder Freitas Prof. Fabiano Baldo. Banco de Dados I Prof. Diego Buchinger diego.buchinger@outlook.com diego.buchinger@udesc.br Profa. Rebeca Schroeder Freitas Prof. Fabiano Baldo DML Data Manipulation Language Parte II Consultas Básicas

Leia mais

Sintaxe do comando SELECT

Sintaxe do comando SELECT Universidade Estadual de Mato Grosso do Sul Ciência da Computação Banco de Dados Prof. Nilton nilton@comp.uems.br Sintaxe do comando SELECT SELECT FROM [WHERE ]

Leia mais

PCS3413. Engenharia de So-ware e Banco de Dados. Aula 17. Escola Politécnica da Universidade de São Paulo

PCS3413. Engenharia de So-ware e Banco de Dados. Aula 17. Escola Politécnica da Universidade de São Paulo PCS3413 Engenharia de So-ware e Banco de Dados Aula 17 Escola Politécnica da Universidade de São Paulo 1 SQL STRUCTURED QUERY LANGUAGE Manipulação de dados operações de modificam o estado das tabelas:

Leia mais

SQL DML. SQL Linguagem de Manipulação de Dados SELECT SELECT SELECT SELECT

SQL DML. SQL Linguagem de Manipulação de Dados SELECT SELECT SELECT SELECT Pós-graduação em Ciência da Computação CCM-202 Sistemas de Banco de Dados SQL Linguagem de Manipulação de Dados Profa. Maria Camila Nardini Barioni camila.barioni@ufabc.edu.br Bloco B - sala 937 2 quadrimestre

Leia mais

IMPLEMENTAÇÃO DE BANCO DE DADOS

IMPLEMENTAÇÃO DE BANCO DE DADOS IMPLEMENTAÇÃO DE BANCO DE DADOS MODULO 2 LINGUAGEM SQL CONTEÚDO 2. LINGUAGEM SQL 2.1 Linguagens de Definição de Dados (DDL) 2.1.1 Criação de tabela: CREATE 2.1.2 Alteração de Tabela: ALTER 2.1.3 Exclusão

Leia mais

SQL - Perguntas. André Restivo. Faculdade de Engenharia da Universidade do Porto. February 24, 2012

SQL - Perguntas. André Restivo. Faculdade de Engenharia da Universidade do Porto. February 24, 2012 SQL - Perguntas André Restivo Faculdade de Engenharia da Universidade do Porto February 24, 2012 André Restivo (FEUP) SQL - Perguntas February 24, 2012 1 / 46 Sumário 1 Introdução 2 Seleccionar e Filtrar

Leia mais

Linguagem SQL. ENG1518 Sistemas de Informação Gerenciais Prof. Marcos Villas

Linguagem SQL. ENG1518 Sistemas de Informação Gerenciais Prof. Marcos Villas Linguagem SQL ENG1518 Sistemas de Informação Gerenciais Prof. Marcos Villas villas@puc-rio.br SQL Linguagem padrão de acesso tabelas em um banco de dados relacional Permite definir e manipular dados DML

Leia mais

Subconsultas ou Consultas Aninhadas

Subconsultas ou Consultas Aninhadas Subconsultas ou Consultas Aninhadas Forma alternativa de especificar consultas envolvendo relacionamentos entre tabelas Otimização filtragens prévias de dados na subconsulta apenas tuplas/atributos de

Leia mais

Sumário. Bancos de Dados Avançados Processamento de Consultas. Tradução SQL Álgebra Relacional

Sumário. Bancos de Dados Avançados Processamento de Consultas. Tradução SQL Álgebra Relacional Introdução Como o SGBD INTERNAMENTO processa, otimiza e executa consultas de alto nível Bancos de Dados Avançados Processamento de Consultas DCC030 - TCC: Bancos de Dados Avançados (Ciência Computação)

Leia mais

Ex.: INSERT INTO tmpautor (CDAUTOR, NMAUTOR) VALUES (1, Renato Araújo )

Ex.: INSERT INTO tmpautor (CDAUTOR, NMAUTOR) VALUES (1, Renato Araújo ) PRONATEC - Programador de Sistemas Banco de Dados 1) Incluindo linhas nas tabelas a. Para incluir linhas em tabelas utilize o comando INSERT INTO INSERT INTO tabela [ ( coluna [, coluna,...] ) ] VALUES

Leia mais

SQL. SQL (Structured Query Language) Comando CREATE TABLE. SQL é uma linguagem de consulta que possibilita:

SQL. SQL (Structured Query Language) Comando CREATE TABLE. SQL é uma linguagem de consulta que possibilita: SQL Laboratório de Computação para Ciências Módulo II Prof. Guilherme Tavares de Assis Universidade Federal de Ouro Preto UFOP Instituto de Ciências Exatas e Biológicas ICEB Mestrado Profissional em Ensino

Leia mais

Tecnologias de Bancos de Dados

Tecnologias de Bancos de Dados Tecnologias de Bancos de Dados Processamento e Otimização de consultas Professor: Tadeu dos Reis Faria Set/2008 Referências Bibliográficas NAVATHE, Shamkant B., ELSMARI, Ramez. Sistemas de Banco de Dados.

Leia mais

1ª Prova 23/10/17. Tópicos estudados (todos os assuntos até agora, 12 aulas):

1ª Prova 23/10/17. Tópicos estudados (todos os assuntos até agora, 12 aulas): Algebra Relacional Adaptado de Karine Reis Ferreira karine@dpi.inpe.br Gilberto Câmara gilberto@dpi.inpe.br Gilberto Ribeiro de Queiroz gribeiro@dpi.inpe.br 1ª Prova 23/10/17 Tópicos estudados (todos os

Leia mais

Usando Subconsultas para Solucionar Consultas

Usando Subconsultas para Solucionar Consultas Usando Subconsultas para Solucionar Consultas Objetivos Ao concluir esta lição, você será capaz de: Definir subconsultas Descrever os tipos de problemas que as subconsultas podem solucionar Listar os tipos

Leia mais

Comandos de Manipulação

Comandos de Manipulação SQL - Avançado Inserção de dados; Atualização de dados; Remoção de dados; Projeção; Seleção; Junções; Operadores: aritméticos, de comparação,de agregação e lógicos; Outros comandos relacionados. SQL SQL

Leia mais

Uma expressão básica em SQL consiste em três cláusulas: select, from e where.

Uma expressão básica em SQL consiste em três cláusulas: select, from e where. Introdução a Banco de Dados O.K. Takai; I.C.Italiano; J.E. Ferreira. 67 8 A Linguagem SQL A linguagem SQL é um padrão de linguagem de consulta comercial que usa uma combinação de construtores em Álgebra

Leia mais

Modelo Entidade-Relacionamento

Modelo Entidade-Relacionamento Modelo Entidade-Relacionamento Processo de Projeto de Bancos de Dados Mini-Mundo Análise de Requisitos Requisitos Funcionais Requisitos do BD Análise Funcional Projeto Conceitual Especificação das Transações

Leia mais

MODELO DE DADOS VS ESQUEMA

MODELO DE DADOS VS ESQUEMA MODELO DE DADOS VS ESQUEMA Um modelo de dados é um conjunto de conceitos usados para se descrever dados. Um esquema é uma descrição de uma determinada coleção de dados, descrição essa baseada num certo

Leia mais

Linguagem SQL Comando SELECT Subqueries

Linguagem SQL Comando SELECT Subqueries BDDAD Bases de Dados Linguagem SQL Comando SELECT Nelson Freire (ISEP LEI-BDDAD 2015/16) 1/9 Subquery Consiste num SELECT Dentro de outro. Que utiliza o resultado de outro SELECT. Exemplo Relação: Pessoa(,

Leia mais

Modelo de Dados Relacional

Modelo de Dados Relacional Modelo de Dados Relacional Sumário Conceitos Básicos Domínios, atributos, tuplas e relações Características das relações Notação Restrições de Integridade Domínio, chave, integridade entidade e integridade

Leia mais

Subconsultas ou Consultas Aninhadas

Subconsultas ou Consultas Aninhadas Subconsultas ou Consultas Aninhadas Forma alternativa de especificar consultas envolvendo relacionamentos entre tabelas Otimização filtragens prévias de dados na subconsulta apenas tuplas/atributos de

Leia mais

Memória de aula Aulas 11 e 12

Memória de aula Aulas 11 e 12 Tecnologia em Análise e Desenvolvimento de Sistemas Disciplina: B1SGB - Sistemas Gerenciadores de Banco de Dados Memória de aula Aulas 11 e 12 1) Revisão a. Cláusula join (inner e outer) 2) Cláusula GROUP

Leia mais

UNIVERSIDADE FEDERAL DA GRANDE DOURADOS PRÓ-REITORIA DE GRADUAÇÃO PROGRAD FACULDADE DE CIÊNCIAS EXATAS E TECNOLOGIA CURSO DE SISTEMAS DE INFORMAÇÃO

UNIVERSIDADE FEDERAL DA GRANDE DOURADOS PRÓ-REITORIA DE GRADUAÇÃO PROGRAD FACULDADE DE CIÊNCIAS EXATAS E TECNOLOGIA CURSO DE SISTEMAS DE INFORMAÇÃO UNIVERSIDADE FEDERAL DA GRANDE DOURADOS PRÓ-REITORIA DE GRADUAÇÃO PROGRAD FACULDADE DE CIÊNCIAS EXATAS E TECNOLOGIA CURSO DE SISTEMAS DE INFORMAÇÃO Disciplina: Banco de Dados I Professor: Prof. Me. Everton

Leia mais

SUBCONSULTAS E TIPOS DE JUNÇÃO. Banco de Dados Profa. Ana Paula Wauke

SUBCONSULTAS E TIPOS DE JUNÇÃO. Banco de Dados Profa. Ana Paula Wauke SUBCONSULTAS E TIPOS DE JUNÇÃO Banco de Dados Profa. Ana Paula Wauke Operador IN e NOT IN IN: Dados de um conjunto, membros de um conjunto ou uma consulta; Filmes de categoria: Drama, Terror, Suspense

Leia mais

Fundamentos de Bancos de Dados Prova 2

Fundamentos de Bancos de Dados Prova 2 Fundamentos de Bancos de Dados Prova 2 Prof. Carlos A. Heuser 23 de julho de 2003 Duração: 2 horas Prova com consulta Para as consultas de SQL, considere o seguinte esquema de um banco de dados de estradas

Leia mais

Banco de Dados I Linguagem SQL Parte 2. Autor: Prof. Cláudio Baptista Adaptado por: Prof. Ricardo Antonello

Banco de Dados I Linguagem SQL Parte 2. Autor: Prof. Cláudio Baptista Adaptado por: Prof. Ricardo Antonello Banco de Dados I Linguagem SQL Parte 2 Autor: Prof. Cláudio Baptista Adaptado por: Prof. Ricardo Antonello Introdução Como vimos, um SGBD possui duas linguagens: DDL: Linguagem de Definição de Dados. Usada

Leia mais

Bases de Dados BDDAD. Linguagem SQL. Comando SELECT Divisão Algébrica. Nelson Freire (ISEP LEI-BDDAD 2015/16) 1/9

Bases de Dados BDDAD. Linguagem SQL. Comando SELECT Divisão Algébrica. Nelson Freire (ISEP LEI-BDDAD 2015/16) 1/9 BDDAD Bases de Dados Linguagem SQL Comando SELECT Nelson Freire (ISEP LEI-BDDAD 2015/16) 1/9 Operador Sumário Introdução Expressão Equivalente em SQL Soluções Tradução Directa de Expressão Algébrica Quantificação

Leia mais

MATA60 BANCO DE DADOS Aula: Otimização. Prof. Daniela Barreiro Claro

MATA60 BANCO DE DADOS Aula: Otimização. Prof. Daniela Barreiro Claro MATA60 BANCO DE DADOS Aula: Otimização Prof. Daniela Barreiro Claro Introdução a Otimização SQL, SQL3 e OQL são linguagens declarativas O SGBD deve processar e otimizar estas consultas antes delas serem

Leia mais

Aula 11 SBD SQL Parte 3. Profa. Elaine Faria UFU

Aula 11 SBD SQL Parte 3. Profa. Elaine Faria UFU Aula 11 SBD SQL Parte 3 Profa. Elaine Faria UFU - 2018 Group by e Having Às vezes deseja-se aplicar operações agregadas a cada um dos vários grupos de linhas em um relação Group by e Having C31: Encontre

Leia mais

Etapa III - Implementação de Operadores da Álgebra Relacional; Etapa IV - Comparação experimental de varredura sequencial x acesso aleatório

Etapa III - Implementação de Operadores da Álgebra Relacional; Etapa IV - Comparação experimental de varredura sequencial x acesso aleatório UFU/FACOM/BCC GBC053 - Gerenciamento de Banco de Dados - 2018/2 Trabalho de Implementação Prof. Ilmério Reis da Silva O trabalho semestral da disciplina em epígrafe tem como objetivo a implementação de

Leia mais

SQL DCC011. SQL gerenciar tabelas e dados. Programa. Introdução. Introdução

SQL DCC011. SQL gerenciar tabelas e dados. Programa. Introdução. Introdução Programa DCC011 Introdução a Banco de Dados SQL gerenciar taelas e dados Mirella M. Moro Departamento de Ciência da Computação Universidade Federal de Minas Gerais mirella@dcc.ufmg.r Introdução Conceitos

Leia mais

BANCO DE DADOS. SQL Select. Engenharia da Computação. Aula 20. Vamos considerar a tabela EMP para os exemplos a seguir. SELECT colunas FROM tabelas;

BANCO DE DADOS. SQL Select. Engenharia da Computação. Aula 20. Vamos considerar a tabela EMP para os exemplos a seguir. SELECT colunas FROM tabelas; Engenharia da Computação BANCO DE DADOS Aula SQL Select SELECT - recupera informação do Banco de Dados. Formato mais simples: SELECT colunas FROM tabelas; Vamos considerar a tabela EMP para os exemplos

Leia mais

Oracle Database: Fundamentos de SQL e PL/SQL

Oracle Database: Fundamentos de SQL e PL/SQL Oracle University Contact Us: 0800 891 6502 Oracle Database: Fundamentos de SQL e PL/SQL Duration: 5 Days What you will learn Este curso apresenta os fundamentos de SQL e PL/SQL e as vantagens das linguagens

Leia mais

SQL Uma Visão mais Ampla

SQL Uma Visão mais Ampla SQL Uma Visão mais Ampla Banco de Dados Modelo Entidade-Relacionamento n possui 1 1 oferece n filial_nro filial_local filial_data_abertura cli_codigo cli_nome cli_telefone m aluga n FILIAL 1 cadastra n

Leia mais

Álgebra Relacional e SQL

Álgebra Relacional e SQL Álgebra Relacional e SQL Banco de Dados Profa. Dra. Cristina Dutra de Aguiar Ciferri Álgebra Relacional Maneira teórica de se manipular o banco de dados relacional Linguagem de consulta procedural usuários

Leia mais

Fundamentos de Bases de Dados e-fólio A Resolução e Critérios de Correção

Fundamentos de Bases de Dados e-fólio A Resolução e Critérios de Correção 21053 - Fundamentos de Bases de Dados 2012-2013 e-fólio A Resolução e Critérios de Correção PARA A RESOLUÇÃO DO E-FÓLIO, ACONSELHA-SE QUE LEIA ATENTAMENTE O SEGUINTE: 1) O e-fólio é constituído por 2 perguntas,

Leia mais

Ordenação de tuplos order by

Ordenação de tuplos order by Bases de Dados Elementos da linguagem SQL Ordenação de tuplos order by A cláusula order by permite ordenar tuplos exemplo: listar por ordem alfabética os nomes dos clientes com empréstimo na agência de

Leia mais

SQL. Agregações e agrupamentos. Cristina C. Vieira Departamento de Engenharia Eletrónica e Informática

SQL. Agregações e agrupamentos. Cristina C. Vieira Departamento de Engenharia Eletrónica e Informática SQL Agregações e agrupamentos Cristina C. Vieira Departamento de Engenharia Eletrónica e Informática SQL Agregações As operações de agregação calculam um valor para um conjunto de tuplos. Operadores de

Leia mais