CREATE TABLE Professor(Codigo int, Nome varchar(50), Endereco varchar(100), Telefone varchar(11), CONSTRAINT PK_Professor PRIMARY KEY(Codigo))

Documentos relacionados
TRABALHO DE BANCO DE DADOS

'%'! $!0" $ 8 ' %%! % '! $ $$% + ' %!%$/)!'4!+,"/)!)+,/)% *! +,"0''% * %$!*!$$ #!"%&%'%'%$! "94(# ' %'$%$$$%0%$%' *!% %%%'!**% > %% %%!31?

BANCO DE DADOS II CONVENIÊNCIA

Programação em Banco de dados

Introdução ao PostgreSQL

Uma solução possível para garantir, em ambiente APEX, a consistência duma estrutura ISA, total e disjuntiva.

Linguagem SQL. Comandos Básicos

drop database escola; CREATE DATABASE escola; USE escola; CREATE TABLE curso ( numcurso int NOT NULL, nome varchar(40), totalcreditos int,

Exercícios de SQL. Prof. Márcio Bueno.

SQL (Tópicos) Structured Query Language

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

Utilizando o Postgres - comandos SQL para a manipulação de dados

Sumário: 1) Trabalhando com Constraints: - NOT NULL - UNIQUE - PRIMARY KEY - FOREIGN KEY - DEFAULT

Comandos de Manipulação

SQL CREATE DATABASE. MySQL, SQL Server, Access, Oracle, Sybase, DB2, e outras base de dados utilizam o SQL.

Join Sql. Vitor Vaz da Silva

A U L A 8 C O N S U L T A S U N I N D O D U A S O U M A I S T A B E L A S P A R T E 2

TECNOLOGIA EM SISTEMAS PARA INTERNET PROJETO DE BANCO DE DADOS

A U L A 1 0 C R I A N D O V I E W S V I E W S ( V I S Õ E S )

AULA 8 EXEMPLOS CRIAR AS TABELAS PROPOSTAS NA AULA E INSERIR OS REGISTROS SUGERIDOS

Transacções. Vitor Vaz da Silva

BANCO DE DADOS. Para a criação de um banco de dados, através de scripts SQL, deve-se usar a seguinte sintaxe: CREATE DATABASE <nome_banco_de_dados>

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

Fundamentos de Banco de Dados Postgre com Sql

Linguagem SQL (Parte II)

INSTITUTO FEDERAL DE EDUCAÇÃO, CIÊNCIA E TECNOLOGIA DO RIO GRANDE DO NORTE INTRODUÇÃO A SQL

Sistemas de Bases de Dados Relacionais Introdução ao SQL. Interrogações diversas sobre a Base de Dados Northwind - Parte II

Exercício Aula Passada. SQL Linguagem de Manipulação de Dados. Exercício Aula Passada. Exercício Aula Passada. Exercício Aula Passada

Apresentação Modelo e SQL. André Luiz Montevecchi

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

BANCO DE DADOS SQL. Aprendendo a manipular dados. Banco de dados utilizado: PostgreSQL.

Conceitos básicos. Funcionario SIAPE Nome Lotacao Cargo Salario Admissao

ALTERANDO O NOME DA TABELA ALTER TABLE DEPTO RENAME TO TAB_DEPARTAMENTO

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

SIG: Sistemas de Informações Geográficas. Adaptado de Gilberto Câmara


Preparação criar tabela. Linguagem de Manipulação de Dados (DML) Estudo Dirigido 12/11/2018

SELECT * FROM INFORMATION_SCHEMA.COLUMNS WHERE table_name = 'pessoas';

IMPLEMENTAÇÃO DE BANCO DE DADOS

Introdução à Banco de Dados. Nathalia Sautchuk Patrício

Aula de SQL Comandos DDL. André Luiz de Oliveira Eduardo Raul Hruschka

As Instruções DML. As Instruções de manipulação de dados(dml) em SQL são representados por: Modificam o estado do banco de dados:

Preparação. Linguagem de Manipulação de Dados (DML) Estudo Dirigido 10/12/2013

BANCO DE DADOS I. Exercícios

Bases de Dados 2005/2006. Aula 5

3) Palavra-chave distinct (select-from). Obter apenas os pibs distintos entre si.

Banco de Dados I Introdução SQL

Parte I (correspondente à matéria do 1º teste)

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

Professor: Claudio Maximiliano Zaina Aluno: Alef Vinicius Cardoso e Silva Prontuário: Aluno: Protuário: BANCO DE DADOS II

AULA 8 CRIANDO UMA CLASSE EM PHP INTERAGINDO COM BANCO DE DADOS - COM RELACIONAMENTO ENTRE TABELAS

PROGRAMA. 3.SQL Básico. 3.1 Criação de tabelas 3.2 Queries simples 3.3 Subqueries 3.4 Agregação. Prof. Dr. Marcos Tsuzuki

Escola Secundária de Albufeira. Comandos MySQL. (Páginas Web Dinâmicas: PHP e MySQL) Carlos Nunes

EXEMPLOS DE COMANDOS NO SQL SERVER

Crie a seguinte estrutura: Banco de Dados: Carros e duas tabelas: proprietários e veículos, conforme está abaixo e cadastre os mesmos dados:

SQL TGD/JMB 1. Projecto de Bases de Dados. Linguagem SQL

Roteiro. SQL Linguagem de Manipulação de Dados. Exercício Aula Passada. Exercício Aula Passada. Exercício Aula Passada. Exercício Aula Passada

Revisão Banco de Dados

Marcelo Henrique dos Santos

Lista 02 Sistema de Banco de Dados CAP 241 Computação Aplicada I

Conceitos SQL SQL 19/03/2017 O que é dado? O que é BD? O que é uma informação? O que é SGBD? O que é SQL? O que é BD? O que é SGBD?

Banco de Dados. SQL Structured Query Language

SQL é uma linguagem de consulta que implementa as operações da álgebra relacional de forma bem amigável.

Atualização e Inserção de Dados. SQL Avançado. Pedro F. Carvalho OCP Oracle g

SQL BÁSICO. Luiz Antônio Vivacqua Corrêa Meyer

CREATE TABLE AUTOR ( cod_autor int not null primary key, nome_autor varchar (60) )

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

TLBD II. Continuação (04)

Disciplina: Banco de Dados Tema: SQL Parte 2

INNER, CROSS, LEFT, RIGHT E FULL JOINS SIMPLES ASSIM! Wellyngton Luiz Cruz Moreira wlcmoreira@hotmail.com

Trabalho de SQL. Disciplina: INE5423 Banco de Dados I Professor: Ronaldo S. Mello

Esquema da Relação. Modelo Relacional. Instância da Relação. Exemplo. Uma base de dados é uma colecção de uma ou mais relações com nomes distintos

INSERT INTO shop VALUES (1,'A',3.45),(1,'B',3.99),(2,'A',10.99),(3,'B',1.45),(3,'C',1.69), (3,'D',1.25),(4,'D',19.95);

Introdução em Banco de Dados

Linguagem de Consulta Estruturada (SQL)

S Q L 31/03/2010. SQL - Structured Query Language Linguagem de Consulta Estruturada

Informática I. Aula 8. Aula 8-25/09/2006 1

WHILE = 0 -- Enquanto não é o fim do cursor, execute.

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

S Q L 15/01/2013. Enfoques de SQL. Enfoques de SQL SQL. Usos de SQL. SQL - Origem/Histórico. Gerenciamento de Dados e Informação

ANÁLISE E PROJETO DE BANCO DE DADOS

Teste Exemplo Revisão da tentativa 1

Marcos Alexandruk Marcos Alexandruk

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

UFG - Instituto de Informática

A U L A 9 F U N Ç Õ E S A G R E G A D A S E C Á L C U L O S

Banco de Dados. Professora: Luciana Faria

SQL. Prof. Roger Cristhian Gomes


Banco de Dados. Diego Silveira Costa Nascimento. 20 de março de Instituto Federal do Rio Grande do Norte

COMPETÊNCIAS ESPECÍFICAS Compreender e utilizar a linguagem SQL, na construção e manutenção de uma base de dados.

SQL S Q L. Introdução. Enfoques de SQL. SQL - Origem/Histórico. Usos de SQL. SQL - Vantagens. Banco de Dados. Fernando Fonseca Ana Carolina

Banco de Dados I 5 Linguagens de Consulta

1º Teste Sem consulta

Structured Query Language (SQL) Aula Prática

AULA 2 INTERAÇÃO COM O BANCO DE DADOS

SQL S Q L. Introdução. Enfoques de SQL. SQL - Origem/Histórico. Usos de SQL. SQL - Vantagens. Gerenciamento de Dados e Informação

Sistemas de Banco de Dados I. Escola Alcides Maya DDL - Introdução

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

Transcrição:

Exercício sobre SQL - Gabarito 1. Criação das tabelas: CREATE TABLE Aluno(RA int, Nome varchar(50), CPF varchar(11) UNIQUE, Endereco varchar(100), Telefone varchar(11), CONSTRAINT PK_Aluno PRIMARY KEY(RA)) CREATE TABLE Professor(Codigo int, Nome varchar(50), Endereco varchar(100), Telefone varchar(11), CONSTRAINT PK_Professor PRIMARY KEY(Codigo)) CREATE TABLE Disciplina(Codigo int, Nome varchar(30), CargaHoraria int, CodProf int, CONSTRAINT PK_Disciplina PRIMARY KEY(Codigo), CONSTRAINT FK1_Disciplina FOREIGN KEY(CodProf) REFERENCES Professor(Codigo)) CREATE TABLE Requisito(Codigo int, CodigoRequisito int, CONSTRAINT PK_Requisito PRIMARY KEY(Codigo, CodigoRequisito), CONSTRAINT FK1_Requisito FOREIGN KEY(Codigo) REFERENCES Disciplina(Codigo), CONSTRAINT FK2_Requisito FOREIGN KEY(CodigoRequisito) REFERENCES Disciplina(Codigo)) CREATE TABLE Matricula(CodigoDisc int, RA int, MediaFinal real, FrequenciaTotal int, CONSTRAINT PK_Matricula PRIMARY KEY(CodigoDisc, RA), CONSTRAINT FK1_Matricula FOREIGN KEY(CodigoDisc) REFERENCES Disciplina(Codigo), CONSTRAINT FK2_Matricula FOREIGN KEY(RA) REFERENCES Aluno(RA)) 2. Inserção dos registros: INSERT INTO Aluno VALUES (1, 'Marcos Silva', '12341234123', 'R. das Rosas, 123', '2345-9078'), (2,'Helena Oliveira','98760987654','R. dos Cravos, 567', '8907-8765'), (3,'Paulo Pereira', '56785678987', 'Al. dos Lirios, 456', '3218-5645'), (4, 'Paola das Neves', '34560987123', 'Al. das Acácias, 34', '7896-8976'), (5, 'Maria Inês de Sza','54378654987','R. das Flores, 459','5643-8976'), (6,'Tânia Rodrigues','34251623457','R. das Margaridas, 879','3218-4536'), (7,'Mônica Rocha','78453409876','R. das Goiabeiras, 654','3219-7890'), (8,'Jean Venturini','45328907654','Al. das Mangueiras, 54','3219-7695'), (9,'Yeda Santos','78678767564','Al. das Laranjeiras, 78','3218-6754'), (10,'Luciano Pirille','56432178976','Av. São Paulo, 327','3219-6759') INSERT INTO Professor VALUES (1, 'Marcia Simas', 'R. dos Trevos, 321','3214-9078'), (2, 'Haroldo da Silva', 'R. da Glória, 789', '3219-8765'), (3, 'Pedro Custódio', 'Al. Lorena, 27', '3217-5645'), (4, 'Pamela Martins', 'Al. Franca, 98', '7887-8976'), (5, 'Marta de Melo', 'R. dos Pinheiros, 45', '8522-8976'), (6, 'Péricles Arruda', 'R. dos Moinhos, 528','8761-8567') INSERT INTO Disciplina VALUES (1,'Cálculo I',40, 1), (2,'Cálculo II', 40, 3), (3,'Física I', 40, 4), (4,'Física II', 40, 2),(5,'Estatística', 20, 5) INSERT INTO Requisito VALUES (2,1),(3,1),(4,3),(4,2) INSERT INTO Matricula VALUES

(1,6,8.5,95),(1,7,6.5,87),(1,8,4.0,90),(1,9,5.5,50),(1,10,7.0,60),(3,6,9.0,90),(3,7,7.5,80),(3,8,5.0,85),(3,10,7.5,76), (2,1,3.5,60),(2,2,5.5,70),(2,3,6.0,76),(2,4,5.5,80),(2,5,7.5,90),(4,1,4.0,60),(4,2,7.0,80),(4,3,8.5,85),(4,4,6.5,50), (4,5,7.0,78),(5,1,6.5,70),(5,3,7.5,87),(5,4,9.5,95) 1. SELECT * FROM Aluno ORDER BY Nome 2. SELECT Disciplina.Nome, Disciplina.CargaHoraria, Professor.Nome FROM Disciplina, Professor WHERE Disciplina.CodProf = Professor.Codigo SELECT Disciplina.Nome, Disciplina.CargaHoraria, Professor.Nome FROM Disciplina INNER JOIN Professor ON Disciplina.CodProf = Professor.Codigo 3. SELECT Professor.Nome, Disciplina.Nome FROM Disciplina RIGHT JOIN Professor ON Disciplina.CodProf = Professor.Codigo ORDER BY Professor.Nome 4. SELECT D1.Nome, D2.Nome FROM Disciplina AS D1, Requisito, Disciplina AS D2 WHERE D1.Codigo = Requisito.Codigo AND D2.Codigo = Requisito.CodigoRequisito SELECT D1.Nome, D2.Nome

FROM Disciplina AS D1 INNER JOIN Requisito ON D1.Codigo = Requisito.Codigo INNER JOIN Disciplina AS D2 ON D2.Codigo = Requisito.CodigoRequisito 5. SELECT Disciplina.Nome, Aluno.Nome FROM Disciplina, Matricula, Aluno WHERE Disciplina.Codigo = Matricula.CodigoDisc AND Aluno.RA = Matricula.RA AND Matricula.MediaFinal >= 6 AND FrequenciaTotal >= 75 SELECT Disciplina.Nome, Aluno.Nome FROM Disciplina INNER JOIN Matricula ON Disciplina.Codigo = Matricula.CodigoDisc INNER JOIN Aluno WHERE Matricula.MediaFinal >= 6 AND FrequenciaTotal >= 75 6., Disciplina WHERE Disciplina.Codigo = Matricula.CodigoDisc AND Matricula.RA = Aluno.RA AND Disciplina.Nome = 'Cálculo I' AND MediaFinal BETWEEN 6 AND 8 ON Matricula.RA = Aluno.RA INNER JOIN Disciplina ON Disciplina.Codigo = Matricula.CodigoDisc WHERE Disciplina.Nome = 'Cálculo I' AND MediaFinal BETWEEN 6 AND 8

7. SELECT Matricula.CodigoDisc, COUNT(*) AS 'Número de alunos matriculados' GROUP BY Matricula.CodigoDisc 8., COUNT(*) AS 'Número de disciplinas nas quais está matriculado', COUNT(*) AS 'Número de disciplinas nas quais está matriculado' 9., AVG(MediaFinal) AS 'Media Geral das Notas', AVG(MediaFinal) AS 'Media Geral das Notas'

10. SELECT Professor.Nome, Professor.Telefone FROM Professor WHERE Professor.Codigo NOT IN (SELECT Disciplina.CodProf FROM Disciplina) 11., Matricula.MediaFinal AND Matricula.CodigoDisc IN (SELECT Disciplina.Codigo FROM Disciplina WHERE Disciplina.Nome = 'Física II'), Matricula.MediaFinal WHERE Matricula.CodigoDisc IN (SELECT Disciplina.Codigo FROM Disciplina WHERE Disciplina.Nome = 'Física II') 12. WHERE Matricula.MediaFinal >= ANY

AND Matricula.MediaFinal >= ANY 13. AND Matricula.MediaFinal >ALL WHERE Matricula.MediaFinal > ALL 14. SELECT * FROM Professor WHERE Nome LIKE 'P%' 15. SELECT * FROM Aluno WHERE Endereco NOT LIKE 'R%'