Consultas SQL Parte II

Documentos relacionados
Tarefa Orientada 13 Agrupamento e sumário de dados

Comandos de Manipulação

Tarefa Orientada 14 Subconsultas

Projeto de Banco de Dados

SQL UMA ABORDAGEM INTERESSANTE

António Rocha Nuno Melo e Castro

SQL Linguagem de Manipulação de Dados. Banco de Dados Profa. Dra. Cristina Dutra de Aguiar Ciferri

DML - SELECT Agrupando Dados

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

Tarefa Orientada 12 Junção Externa, Auto-Junção e União

NOME SEXO CPF NASCIMENTO SALARIO

Tarefa Orientada 11 Junção Interna

Prof.: Clayton Maciel Costa

IF685 Gerenciamento de Dados e Informação - Prof. Robson Fidalgo 1

Definida pelo American National Standard Institute (ANSI) em 1986

Tarefa Orientada 16 Vistas

EXEMPLOS DE COMANDOS NO SQL SERVER

SQL DML. Frederico D. Bortoloti

Structured Query Language (SQL) SQL é uma linguagem normalizada (ANSI) para consultas e actualizações de bases de dados relacionais.

Texto Base Livro texto: SQL Guia Prático 2ª Edição Rogério Luís de C. Costa. Banco de Dados II Comando Select. Gustavo Dibbern Piva

SQL. Prof. Márcio Bueno.

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

Álgebra Relacional. Conjunto de operações que usa uma ou duas relações como entrada e gera uma relação de saída. Operações básicas:

SQL (Structured Querie Language) Escola Secundária de Emídio Navarro 2001/2002 Estruturas, Tratamento e Organização de Dados

Múltiplas Tabelas. Disciplina de Banco de Dados

Structured Query Language (SQL)

Tarefa Orientada 10 Obter informação a partir de uma tabela

Programação SQL. INTRODUÇÃO II parte

SQL Comandos para Relatórios e Formulários. Laboratório de Bases de Dados Profa. Dra. Cristina Dutra de Aguiar Ciferri

Linguagem de Banco de Dados DML Exercícios

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

Básico da Linguagem SQL. Definição de Esquemas em SQL. SQL(Structured Query Language)

PROGRAMA. Objectivos Gerais :

Linguagem de Consulta Estruturada SQL- DML

PROGRAMA. Aquisição dos conceitos teóricos mais importantes sobre bases de dados contextualizados à luz de exemplos da sua aplicação no mundo real.

1. Assinale as afirmações que são verdadeiras e as que são falsas, corrigindo-as:

Projeto e Implementação

Linguagem de Consulta - SQL

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

Treinamento sobre SQL

SQL (Structured Query Language)

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

Bem-vindo ao tópico sobre consultas no SAP Business One.

Banco de Dados. Marcio de Carvalho Victorino Exercícios SQL

Java Persistence Query Language JPQL

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

BDII SQL Junção Revisão 8

EXERCÍCIOS PRÁTICOS. Banco de Dados

SQL Consultas Básicas

Pedro F. Carvalho OCP Oracle g LINGUAGEM SQL. São José do Rio Preto

Query SQL (Structured Query Language)

ANÁLISE E PROJETO DE BANCO DE DADOS

Principais Comandos SQL Usados no MySql

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

Banco de Dados. Prof. Antonio

Introdução ao SQL Avançado

1. SQL Instrumental Select Delete Update Insert Group by Having Unnion All...

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

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

Principais Instruções em SQL. Contidas nesta apostila as principais instruções em SQL para a manutenção em Bancos de Dados.

BANCO DE DADOS -INTRODUÇÃO AO SQL. Prof. Angelo Augusto Frozza, M.Sc.

Banco de dados Continuação das consultas em SQL... 3º trimestre Prof. Patrícia Lucas.

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

1.264 Aula 7. Introdução ao SQL

Bases de Dados 2005/2006. Aula 5

Operação de União JOIN

Princípio dos anos 70 IBM desenvolve a linguagem Sequel para o System R. Standards ISO e ANSI SQL-86, SQL-89, SQL-92, SQL:1999, SQL:2003

Tarefa Orientada 15 Manipulação de dados

Portfólio do Aluno 2012 / º Ano Linguagem de Programação Módulo n.º Fábio Oliveira

Memória de aula Aulas 11 e 12

FEAP - Faculdade de Estudos Avançados do Pará PROFª LENA VEIGA PROJETOS DE BANCO DE DADOS UNIDADE V- SQL

UNIVERSIDADE FEDERAL DE SANTA MARIA - UFSM COLÉGIO AGRÍCOLA DE FREDERICO WESTPHALEN BANCO DE DADOS II

SQL BANCO DE DADOS. Linguagem de consulta SQL. Linguagem de consulta SQL. Linguagem de Consulta Estruturada

Programação SQL. Manipulação de Dados. DML Data Manipulation Language

SQL comando SELECT. SELECT [DISTINCT] <campos> FROM <tabela> [condição] [ ; ] Paulo Damico - MDK Informática Ltda.

Principais Instruções em SQL

Revisão / Exercícios. Prof. Márcio Bueno. {bd2tarde,bd2noited}@marciobueno.com

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

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

Banco de Dados I. Linguagem de Consulta (parte II) Recuperando Dados de Várias Tabelas (JOINS)

O comando CREATE TABLE cria a tabela solicitada e obedece à seguinte forma:

GOVERNO DO ESTADO DO RIO DE JANEIRO SECRETARIA DE ESTADO DE CIÊNCIA, TECNOLOGIA E INOVAÇÃO FUNDAÇÃO DE APOIO À ESCOLA TÉCNICA

SQL Structured Query Language

f. Vocês podem selecionar todos os campos indicando-os, ou seja, sem usar * (boa prática) g. Muito relevante na manutenção de BD e de aplicações.

MODELO DE DADOS VS ESQUEMA

Linguagem de Consulta Estruturada (SQL)

Plano de Trabalho Docente Ensino Técnico

Criação Visual de Consultas. Curso: Técnico em Informática (Integrado) Disciplina: Banco de Dados Prof. Abrahão Lopes

Prova de Fundamentos de Bancos de Dados 2 a Prova

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

LINGUAGEM SQL PARA CONSULTAS EM MICROSOFT ACCESS

Escrito por Sex, 14 de Outubro de :12 - Última atualização Seg, 26 de Março de :33

Programação WEB II. PHP e Banco de Dados. progweb2@thiagomiranda.net. Thiago Miranda dos Santos Souza

CURSO DE EXTENSÃO ON-LINE EM Oracle 10g Express Edition XE nível básico. Edital de seleção

UFCD 787. Administração de base de dados. Elsa Marisa S. Almeida

Banco de Dados. Conversão para o Banco de Dados SisMoura

SQL BÁSICO. Introdução. Prof. Suelane Garcia. Linguagem SQL (Structured Query Language)

UFG - Instituto de Informática

Nome: n.º WEB Série 2B 2C 2D 2E Barueri, 17/08/2009 2ª Postagem Disciplina: Gerenciamento e Estrutura de Banco de Dados Professor: Márcio

Transcrição:

CURSO TÉCNICO EM INFORMÁTICA COMPONENTE CURRICULAR: BANCO DE DADOS PROFESSOR (A): Josiane Ferri TURMA: 11/1 - Tarde Consultas SQL Parte II Outras cláusulas que o comando select apresenta são DISTINCT, ORDER BY, GROUP BY, INNER JOIN, entre outras. DISTINCT: Várias linhas de uma tabela podem conter os mesmos valores para as suas colunas (duplicidade), com exceção da chave primária. o Quando desejarmos eliminar a duplicidade, podemos inserir a palavra-chave DISTINCT após a palavra SELECT. select DISTINCT cidade from CadastroAluno; Se não utilizada retorna o número de vezes que houver algum aluno na Cidade de São Leopoldo. GROUP BY: cláusula usada em conjunto com select que agrupa linhas por um atributo definido. select nome, cidade from CadastroAluno group by cidade; ORDER BY: cláusula usada em conjunto com select que ordena por um ou mais atributos especificados em ordem crescente (ASC) ou decrescente (DESC). Por padrão, a ordenação ocorre em ordem crescente. select * from CadastroAluno order by nome; order by nome ASC; order by nome DESC; Padrão Crescente Decrescente.

Antes de especificar a cláusula INNER JOIN, segue abaixo duas funções que auxiliam na construção das query s que desejam recuperar dados de duas ou mais tabelas. Qualificadores de Nomes o Um qualificador de nome consiste do nome da tabela, seguido de um ponto, seguido por um nome de uma coluna da tabela. Por exemplo, o qualificador da coluna NOME da tabela CadastroAluno será CadastroAluno.Aluno. o Os qualificadores de nome são utilizados em uma consulta para efetivar a junção (JOIN) entre as tabelas. Sinônimos de Nomes select CadastroAluno.id_aluno, CadastroAluno.nome, pagto.id_aluno from CadastroAluno, pagto on CadastroAluno.id_aluno = pagto.id_aluno where dia_venc = 25 o Para que não seja necessário escrever o nome INTEIRO da tabela nas qualificações de nomes, podemos utilizar ALIASES definidos na própria consulta. o Esta opção é utilizada quando temos que recuperar dados de mais de uma tabela conforme visto acima, mas queremos minimizar a escrita da nossa query. select a.id_aluno, a.nome, p.id_aluno from CadastroAluno a, pagto p on a.id_aluno = p.id_aluno where dia_venc = 25 o É possível também criar alias para nomes de uma coluna. Utilizando a clásula AS; select nome AS (Nome do Aluno), from CadastroAluno where cidade = Esteio ;

Serão utilizadas as tabelas abaixo como exemplos: CadastroAluno id_aluno Nome Cidade telefone_celular 001 Cássio São Leopoldo 99776655 002 Leonardo Esteio 99887766 003 Jacson Portão 99775544 A mesma do documento anterior (SQL Parte I) Pagto id_pagto dia_venc valor situação id_aluno 001112011 25 500.00 Pago 001 002112011 25 400.00 Pago 002 003112011 20 550.00 Não Pago 003 inner join cláusula usada em conjunto com select para selecionar informações de tabelas diferentes. o Juntamente com o inner join devemos utilizar o operador ON, para realizar a relação entre as tabelas, isto é, realizar a igualdade entre campos iguais pertencentes em ambas as tabelas. select a.nome, p.dia_venc, p.situacao from pagto p INNER JOIN cadastroaluno a on p.id_aluno = a.id_aluno; o O exemplo acima seleciona o nome do aluno da tabela CadastroAluno, o dia de vencimento e situação da tabela pagto. o Quando utilizadas consultas em mais de uma tabela, é obrigatória essa relação executada pela cláusula ON, para que não ocorra duplicidade dos registros retornados pela consulta. o Também pode-se utilizar a cláusula where depois do inner join. select a.id_aluno, a.nome, p.situacao from CadastroAluno a INNER JOIN pagto p on a.id_aluno = p.id_aluno where dia_venc = 25 ; Retorna o Id_Aluno e Nome da tabela CadastroAluno e a Situação da tabela pagto onde do dia_venc for 25.

Recuperando dados de duas ou mais tabelas: Para recuperar dados três tabelas: Antes vamos inserir as tabela de exemplo: CadastroAluno id_aluno Nome Cidade telefone_celular 001 Cássio São Leopoldo 99776655 002 Leonardo Esteio 99887766 003 Jacson Portão 99775544 Disciplinas id_disciplina Nome Dia Hora_inicio Local 001 Introdução Segunda 19:00 Sala 12 - Laboratório 002 Algoritmos Terça 14:00 Sala 12 - Laboratório 003 Banco de Dados Quarta 14:00 Sala 12 - Laboratório AlunoDisciplina id_disciplina id_aluno Situação 001 002 Aprovado 002 002 Aprovado 003 003 Aprovado select a.nome, d.nome, ad.situacao from CadastroAluno a, Disciplinas d, AlunoDisciplina ad where a.id_aluno = d.id_aluno and ad.id_aluno = d.id_aluno O exemplo acima retornará o nome da disciplina, do aluno e a situação, ou seja qual disciplina o aluno cursa e se o mesmo está aprovado nesta.

Funções de Agregação o As funções de agregação são utilizadas em conjunto com o comando select, na parte de definição dos campos. o Segue uma lista de funções: COUNT, SUM, AVG, MAX, MIN, entre outras o COUNT - Retorna o número de linhas. select count(*) from cadatroaluno; o SUM - Retorna a soma de uma coluna específica. select sum(valor) o AVG - Retorna o valor médio de uma coluna específica. select avg(valor) o MAX - Retorna o valor máximo de uma coluna específica. select max(valor) o MIN - Retorna o valor mínimo de uma coluna específica. select min(valor)

Subquerys: o Subquery significa o uso de um comando SQL dentro de outro comando. o Para utilizarmos as subquerys, precisamos da cláusula EXISTS. select nome from cadastroaluno c where EXISTS (select * from pagto p where c.id_aluno=p.id_aluno); o Utilizamos uma subquery quando precisamos de informações que através da estrutura básica do comando não nos permite o retorno esperado. o No exemplo acima retornará o nome do aluno que contiver algum pagamento para ele cadastrado.