sql structured query language (continuação). insert into é um dos comandos do sql que permite a...

21
SQL Structured Query Language (continuação)

Upload: internet

Post on 17-Apr-2015

159 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: SQL Structured Query Language (continuação). INSERT INTO é um dos comandos do SQL que permite a introdução de dados nas tabelas. Sintaxe: INSERT INTO

SQL

Structured Query Language

(continuação)

Page 2: SQL Structured Query Language (continuação). INSERT INTO é um dos comandos do SQL que permite a introdução de dados nas tabelas. Sintaxe: INSERT INTO

INSERT INTO é um dos comandos do SQL que permite a introdução de dados nas tabelas.

Sintaxe:

INSERT INTO <nome_tabela> [(atributo1,atributo2, atributo3,...)]

VALUES (<valores>)Os parêntesis rectos indicam que esses elementos são opcionais. Os dados de cada atributo (separados por vírgulas) são introduzidos através da palavra VALUES.

Definições usando SQLComandos DML

Page 3: SQL Structured Query Language (continuação). INSERT INTO é um dos comandos do SQL que permite a introdução de dados nas tabelas. Sintaxe: INSERT INTO

Exemplos:

INSERT INTO Departamento

VALUES (50, 'Manutenção' , 'Lisboa')ou

INSERT INTO Departamento (Cod_Depart, Nome_pep, Localização)

VALUES (50, 'Manutenção' , 'Lisboa')

Definições usando SQLComandos DML (cont.)

Page 4: SQL Structured Query Language (continuação). INSERT INTO é um dos comandos do SQL que permite a introdução de dados nas tabelas. Sintaxe: INSERT INTO

UPDATE - Alteração de valores em um ou mais atributos numa tabela e com critérios específicos

Sintaxe:

UPDATE <nome_tabela>

SET <atributo> = <expressão>,

...

[WHERE <condição>]

Definições usando SQLComandos DML (cont.)

Page 5: SQL Structured Query Language (continuação). INSERT INTO é um dos comandos do SQL que permite a introdução de dados nas tabelas. Sintaxe: INSERT INTO

SET define quais são os atributos que se pretende actualizar e os novos valores para esse atributo.

WHERE é opcional e é utilizada quando se pretende condicionar os tuplos.

Exemplo:

UPDATE Empregado

SET Ordenado = Ordenado + 50.000

WHERE Num_Superior=7589

Definições usando SQLComandos DML (cont.)

Page 6: SQL Structured Query Language (continuação). INSERT INTO é um dos comandos do SQL que permite a introdução de dados nas tabelas. Sintaxe: INSERT INTO

DELETE - Eliminação de valores em um ou mais tuplos numa tabela e com critérios específicos.

Sintaxe:DELETE FROM <nome_tabela>[WHERE <condição>]

Exemplo:DELETE FROM EmpregadoWHERE Num_Superior=7589

Definições usando SQLComandos DML (cont.)

Page 7: SQL Structured Query Language (continuação). INSERT INTO é um dos comandos do SQL que permite a introdução de dados nas tabelas. Sintaxe: INSERT INTO

SELECT - selecciona conjunto de atributos de uma(s) tabela(s) dada(s) pelo comando FROM.Sintaxe:

SELECT <atributo1, atributo2,...>FROM <nome_tabela1, nome_tabela2,...>[WHERE <condição>]

Exemplo:SELECT Cod_aluno, Nome, MoradaFROM Aluno

Definições usando SQLComandos DML (cont.)

Page 8: SQL Structured Query Language (continuação). INSERT INTO é um dos comandos do SQL que permite a introdução de dados nas tabelas. Sintaxe: INSERT INTO

O comando SELECT permite incluir expressões aritméticas e modificar o nome dos atributos. Uma expressão pode ser uma combinação de valores, operadores e funções que produzem um valor. Os operadores aritméticos que podemos incluir são:Operadores Descrição+ Soma- Subtracção* Multiplicação/ Divisão

Definições usando SQLComandos DML (cont.)

Page 9: SQL Structured Query Language (continuação). INSERT INTO é um dos comandos do SQL que permite a introdução de dados nas tabelas. Sintaxe: INSERT INTO

Exemplo:SELECT Cod_emp, Ordenado*12FROM Empregado;

O comando ORDER BY é utilizado para ordenar tuplos. Neste exemplo, os tuplos são ordenados por código de departamento que, por defeito, é realizado de forma ascendente:

SELECT Cod_Depar, CargoFROM EmpregadoORDER BY Cod_Depar;

Definições usando SQLComandos DML (cont.)

Page 10: SQL Structured Query Language (continuação). INSERT INTO é um dos comandos do SQL que permite a introdução de dados nas tabelas. Sintaxe: INSERT INTO

A utilização da cláusula DISTINCT permite eliminar linhas repetidasSELECT DISTINCT Cod_Depar, CargoFROM EmpregadoORDER BY Cod_Depar;

O comando WHERE corresponde ao operador de selecção da álgebra relacional. O comando WHERE é utilizado a seguir ao comando FROM e contém uma(s) condição(s) que os tuplos têm que satisfazer para que sejam visualizados. A palavra WHERE deverá possuir três elementos:1.O nome do atributo. 2.O operador de comparação. 3.O nome de um atributo, uma constante ou uma lista de valores.

Definições usando SQLComandos DML (cont.)

Page 11: SQL Structured Query Language (continuação). INSERT INTO é um dos comandos do SQL que permite a introdução de dados nas tabelas. Sintaxe: INSERT INTO

Os operadores de comparação podem ser divididos em duas categorias: lógicos e SQL. Os operadores lógicos testam as seguintes condições:Operador Significado= Igual a> Maior que>= Maior ou igual que< Menor que<= Menor ou igual que<> Diferente

Definições usando SQLComandos DML (cont.)

Page 12: SQL Structured Query Language (continuação). INSERT INTO é um dos comandos do SQL que permite a introdução de dados nas tabelas. Sintaxe: INSERT INTO

Operadores SQL, existem quatro, que operam sobre todos os tipos de dados:Operador SignificadoBETWEEN ..AND.. Entre dois valoresIN(lista) Corresponde a qualquer valor da

listaLIKE Cadeia de caracteres que satisfaz

uma condiçãoIS NULL É um valor nulo

Definições usando SQLComandos DML (cont.)

Page 13: SQL Structured Query Language (continuação). INSERT INTO é um dos comandos do SQL que permite a introdução de dados nas tabelas. Sintaxe: INSERT INTO

Ainda sobre os operadores de comparação utilizados no comando WHERE, existem as respectivas expressões de negação:Operador SignificadoNOT BETWEEN ..AND..Não entre dois valoresNOT IN(lista) Corresponde a nenhum valor da

listaNOT LIKE Cadeia de caracteres que não

satisfaz uma condiçãoIS NOT NULL É um valor não nulo<> Diferente 

Definições usando SQLComandos DML (cont.)

Page 14: SQL Structured Query Language (continuação). INSERT INTO é um dos comandos do SQL que permite a introdução de dados nas tabelas. Sintaxe: INSERT INTO

Exemplos:SELECT Nome, Cargo, Cod_DeparFROM EmpregadoWHERE Cargo='Secretario';

SELECT Nome, N_SuperiorFROM EmpregadoWHERE N_Superior IN (7902,7566,7788);

SELECT NomeFROM EmpregadoWHERE Nome LIKE 'S%';

Definições usando SQLComandos DML (cont.)

Page 15: SQL Structured Query Language (continuação). INSERT INTO é um dos comandos do SQL que permite a introdução de dados nas tabelas. Sintaxe: INSERT INTO

SELECT Nome, N_Superior

FROM Empregado

WHERE N_Superior IS NULL;

SELECT Nome, Ordenado

FROM Empregado

WHERE Ordenado NOT BETWEEN 100000 AND 200000;

Definições usando SQLComandos DML (cont.)

Page 16: SQL Structured Query Language (continuação). INSERT INTO é um dos comandos do SQL que permite a introdução de dados nas tabelas. Sintaxe: INSERT INTO

SELECT Nome, Ordenado,CargoFROM EmpregadoWHERE Ordenado BETWEEN 100000 AND 200000AND Cargo='Secretário';

SELECT Nome, Ordenado, CargoFROM EmpregadoWHERE Ordenado BETWEEN 100000 AND 200000OR Cargo='Secretário';

Definições usando SQLComandos DML (cont.)

Page 17: SQL Structured Query Language (continuação). INSERT INTO é um dos comandos do SQL que permite a introdução de dados nas tabelas. Sintaxe: INSERT INTO

Na linguagem SQL é possível obter resultados baseados em grupos de tuplos ao contrario daquilo que temos feito até agora. Assim, existem funções de grupo que operam sobre conjuntos de tuplos. O comando GROUP BY é utilizado para dividir os tuplos de uma tabela em grupos mais pequenos. Algumas das funções de grupo são:

Definições usando SQLComandos DML (cont.)

Page 18: SQL Structured Query Language (continuação). INSERT INTO é um dos comandos do SQL que permite a introdução de dados nas tabelas. Sintaxe: INSERT INTO

Função Valor produzido

AVG(n) Valor médio de n

COUNT(expr) Número de vezes que a expr toma um valor

MAX(expr) Valor máximo de expr

MIN(expr) Valor mínimo de expr

SUM(n) Soma dos valores de n

Definições usando SQLComandos DML (cont.)

Page 19: SQL Structured Query Language (continuação). INSERT INTO é um dos comandos do SQL que permite a introdução de dados nas tabelas. Sintaxe: INSERT INTO

Expr indica os argumentos que podem ser do tipo CHAR, Number ou DATE.

Todas as funções de grupo, à excepção de COUNT(*), ignoram os valores nulos.

Torna-se ainda importante destacar que as funções de grupo por si só tratam todos os tuplos de uma tabela como um grupo.

Definições usando SQLComandos DML (cont.)

Page 20: SQL Structured Query Language (continuação). INSERT INTO é um dos comandos do SQL que permite a introdução de dados nas tabelas. Sintaxe: INSERT INTO

SELECT AVG(Ordenado)FROM Empregado;

SELECT MIN(Ordenado)FROM EmpregadoWHERE Cargo='secretario';

SELECT Cargo, AVG(Ordenado) MédiaDeOrdenadoFROM EmpregadoGROUP BY Cargo;

Definições usando SQLComandos DML (cont.)

Page 21: SQL Structured Query Language (continuação). INSERT INTO é um dos comandos do SQL que permite a introdução de dados nas tabelas. Sintaxe: INSERT INTO

SELECT Cargo, Cod_Depar, AVG(Ordenado) MédiaDeOrdenado

FROM EmpregadoGROUP BY Cod_Depar, CargoORDER BY Cod_Depar;

SELECT Cargo, MAX(Ordenado) MaxDeOrdenadoFROM EmpregadoGROUP BY CargoHAVING MAX(Ordenado) >= 300000;

Definições usando SQLComandos DML (cont.)