Banco de Dados II Aula 3-4 Conteúdo: Introdução a Linguagem SQL Linguagem de Definição de Dados ( DDL - Data Definition Language ) Linguagem de Manipulação de Dados ( DML –Data Manipulation Language ) Profa. Ms. Sueli A. Loddi Banco de Dados II - Aula 3 Modelo Utilizado para a Aula Banco de Dados II - Aula 3 Inclusões Forma Geral: INSERT INTO <nome_tabela> <lista das colunas> VALUES <lista do conteúdo a ser inserido nas colunas – na mesma orderm da lista anterior > Banco de Dados II - Aula 3 Inclusões Exemplos de Inclusões Banco de Dados II - Aula 3 Inclusões Exemplos de Inclusões Banco de Dados II - Aula 3 Inclusões Exercício: Inclua 5 departamentos Inclua 5 Empregados Inclua 2 dependentes para cada funcionário Cada Empregado deve trabalhar em 2 projetos Banco de Dados II - Aula 3 Seleção SELECT <listra de atributos> FROM <lista de tabelas> WHERE <condição>; Onde: • lista de atributos: é a lista dos atributos que serão recuperados pela consulta; • lista de tabelas: é a lista de relações necessárias para o processamento da consulta; • condição: uma restrição condicional(booleana) que identifica os registros que serão recuperadas na consulta. Banco de Dados II - Aula 3 Seleção Operadores Lógicos básicos do SQL Operador Significado = Igual a < Menor que > Maior que <= Menor ou igual a >= Maior ou igual a <> Diferente (não igual) Banco de Dados II - Aula 3 Seleção Seleção sem filtro Banco de Dados II - Aula 3 Seleção Seleção com filtro Banco de Dados II - Aula 3 Seleção Seleção com filtro e seleção de campos Banco de Dados II - Aula 3 Seleção Seleção com filtro e seleção de campos Banco de Dados II - Aula 3 Alterações Forma Geral UPDATE <NomeTabela> SET <coluna> = <valor a ser alterado> WHERE <condição> Banco de Dados II - Aula 3 Alterações Exemplo Banco de Dados II - Aula 3 Alterações Exercícios: -Altere a tabela projeto para que cada projeto tenha um responsável -Dê um aumento de salário de 15% para os funcionário do RH -Dê um aumento de salário de 25% para os funcionário do TI -Dê um aumento de salário de 55% para os funcionário do Contabilidade -Inclua um campo idade na tabela empregado -Calcule o valor da idade atual de cada empregado e atribua a este campo Banco de Dados II - Aula 3 Remoção Forma geral: DELETE FROM <nome_tabela> WHERE <condição> Banco de Dados II - Aula 3 Remoção Exemplo Banco de Dados II - Aula 3 Between e Not Between Este operador retorna as linhas de um tabela cuja coluna em comparação esteja ou não no intervalo solicitado. Sintaxe: WHERE <Nome Coluna> between <valor1> and <valor2> Ou WHERE <Nome Coluna> not between <valor1> and <valor2> Banco de Dados II - Aula 3 Exemplo Between Banco de Dados II - Aula 3 Like e not Like Este operador trabalha nas colunas tipo caractere, retornando as colunas que tenham o valor/diferente ‘igual’ ao declarado. as linhas de um tabela cuja coluna em comparação esteja ou não no intervalo solicitado. Sintaxe: WHERE <Nome Coluna> like <valor1> Ou WHERE <Nome Coluna> not like <valor1> O % e o _ podem ser usados como coringas. O % como uma cadeia de caracteres e o _ um único caractere. Banco de Dados II - Aula 3 Exemplo Like Banco de Dados II - Aula 3 Exemplo Like Banco de Dados II - Aula 3 in e not in Este operador retorna as linhas de um tabela cuja coluna em comparação esteja ou não no intervalo solicitado. Sintaxe: WHERE <NomeColuna> in (<valor1>,<valor2>, ...,<valorN>) Ou WHERE <Nome Coluna> not in (<valor1>,<valor2>, ...,<valorN>) Banco de Dados II - Aula 3 in e not in Banco de Dados II - Aula 3 Is null e not is null Este operador retorna as linhas de um tabela cuja coluna em comparação esteja ou não no intervalo solicitado. Sintaxe: WHERE <Nome Coluna> is null Ou WHERE <Nome Coluna> is not null Banco de Dados II - Aula 3 Is null e not is null Banco de Dados II - Aula 3 Order By O order by coloca as linhas na ordem de um determinada coluna desejada. Ele pode ser Ascendente (ASC), padrão, ou Descendente ( DESC) Sintaxe: SELECT <nome das colunas> FROM <tabelas> WHERE <Condição> Order By <nome das colunas> Banco de Dados II - Aula 3 Order By Banco de Dados II - Aula 3 Order By Banco de Dados II - Aula 3 Funções Agregadas Funções básicas: Mínimo (MIN) Máximo (MAX) Soma (SUM) MÉDIA (AVG) Contagem de Linhas (Count) Banco de Dados II - Aula 3 Funções Agregadas Banco de Dados II - Aula 3 Distinct A cláusula distinct elimina redundâncias em uma query. Observe o exemplo: Banco de Dados II - Aula 3 Distinct Adicionando o distinct a query a repetição de nomes foi suprimida. Banco de Dados II - Aula 3 Agrupando Informações A função de agregação produz um número simples para uma coluna. A cláusula organiza esse sumário de dados em grupos, produzindo informações sumarizadas para os grupos definidos na tabela objeto de seleção. A cláusula HAVING realiza as restrições das linhas resultantes da mesma forma que a cláusula WHERE o faz mo Select. Sintaxe: SELECT <nome das colunas>, agregação FROM <tabelas> WHERE <Condição> Group By <nome das colunas> HAVING <Condições> Banco de Dados II - Aula 3 Agrupando Informações A função de agregação produz um número simples para uma coluna. A cláusula organiza esse sumário de dados em grupos, produzindo informações sumarizadas para os grupos definidos na tabela objeto de seleção. A cláusula HAVING realiza as restrições das linhas resultantes da mesma forma que a cláusula WHERE o faz mo Select. Sintaxe: SELECT <nome das colunas>, agregação FROM <tabelas> WHERE <Condição> Group By <nome das colunas> HAVING <Condições> Banco de Dados II - Aula 3 Banco de Dados II - Aula 3 O having funcionará como uma restrição para a agregação Banco de Dados II - Aula 3 Banco de Dados II Bibliografia DATE, C. J. Introdução a sistemas de bancos de dados. 8ª Edição. Rio de Janeiro:Elsevier:2003. ELMASRI, Ramirez; NAVATHEM, Shamkant B. Sistema de Banco de Dados. 4ª Edição. São Paulo:Perarson Addison Wesley, 2005. MONTEIRO, Emiliano Soares. Projeto de sistemas de banco de dados. Rio de Janeiro: Brasport, 2004. SILBERSCHATZ, Abrahan; KORTH, Henry F.; SUDARSHAN, S. Sistema de Banco de Dados. 3ª Edição. São Paulo:Makron Books, 1999.