1. O documento descreve como criar uma base de dados chamada "Drogaria" com tabelas para fornecedores, artigos, clientes e encomendas.
2. Instruções são fornecidas para inserir dados nessas tabelas.
3. Várias consultas SQL são listadas para recuperar dados dessas tabelas de diferentes maneiras.
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
Ficha 4 resolução
1. Resolução da Ficha nº4
1. Abra o xamp
2. Cria uma base de dados (nome: Drogaria), com as seguintes tabelas:
CREATE DATABASE Drogaria;
Criar Tabelas :
CREATE TABLE Fornecedores( CodFornecedor int(10); Nome varchar (30), Morada
varchar (18), Telefone int (9), NrContribuinte int (10));
CREATE TABLE Artigos (CodArtigo int (10), Artigo varchar(10), preco varchar(10),
CodFornecedor int (10));
CREATE TABLE Clientes( CodigoCliente int (10), Nome varchar (10), Morada varchar
(10), Telefone int (10), NrContribuinte int (10));
1
2. CREATE TABLE Encomendas( NrEncomendas int(10), Data int(10), CodCliente int(10),
CodArtigo int(10), Quantidade int (10));
3. De seguida preencha a tabela com os seguintes dados:
Inserir dados:
INSERT INTO Artigos ( CodArtigo, Artigo, Preco, CodFornecedor)
VALUES( A01, Alicate X, 2,15€, F101);
Nota * : Para inserir o resto dos dados é sempre igual
Inserir dados:
INSERT INTO Clientes ( CodigoCliente, Nome, Morada, Telefone, NrContribuinte)
VALUES (C111, Antunes, Aveiro, 234456456,235234534)
Nota * : Para inserir o resto dos dados é sempre igual
2
3. Inserir dados:
INSERT INTO Fornecedore (CodFornecedor,Nome,Morada,Telefone,NrContribuinte)
VALUES(F101,Coimbrox,Coimbre,234456456,234567890);
Nota * : Para inserir o resto dos dados é sempre igual
Inserir dados:
INSERT INTO Encomendas ( NrEncomenda, Data, CodCliente, CodArtigo, Quantidade)
VALUES (1, 02-12-2005, C111,A01,10);
Nota * : Para inserir o resto dos dados é sempre igual
3
4. a) Mostrar todos os registos da tabela Artigos.
SELECT * FROM Artigos;
b) Mostrar apenas o nome do artigo e o preço de todos os artigos.
SELECT Nome, Preco FROM Artigos;
c) Mostrar os artigos que têm preço inferior a 3.
SELECT * FROM Artigos WHERE Preco<3;
d) Mostrar apenas o nome do artigo e o preço dos artigos com preço menor que 3.
SELECT Nome, Preco FROM Artigos WHERE Preco<3;
e) Mostrar apenas o nome do artigo e o preço dos artigos com preço entre 2 e 3 inclusive.
SELECT artigo, preco FROM artigos WHERE preco >2 or preco<=3;
f) Mostrar apenas o nome do artigo e o preço dos artigos com preço inferior a 2 ou
superior a 4.
SELECT artigo, preco FROM artigos WHERE preco<2 or preco >4;
g) Mostrar apenas o nome do artigo e o preço dos artigos com preço igual a 5 ou 2,5.
SELECT artigo, preco FROM artigos WHEREpreco =5 or preco =2.5;
h) Mostrar os artigos cujo nome começa pela letra “M”.
SELECT * FROM Artigos WHERE Artigo LIKE ‘M%’;
i) Mostrar os artigos que têm no nome a palavra “ate”.
SELECT * FROM Artigos WHERE Artigo LIKE ‘%ate%’;
j) Mostrar os artigos cujo código começa por “A0”.
SELECT * FROM Artigos WHERE Codigo LIKE ‘A0%’;
k) Mostrar todos os artigos ordenados por preço na ordem descendente.
SELECT * FROM Artigos ODER BY Preco DESC;
l) Mostrar todos os artigos ordenados por preço na ordem ascendente.
SELECT * FROM Artigos ORDER BY Preco ASC;
4
5. m) Ordenar por ordem alfabética crescente os artigos com preço inferior a 3.
n) Contar o total de artigos.
SELECT COUNT (Artigo) FROM Artigos;
o) Contar os artigos cujo preço é maior ou igual a 5.
SELECT COUNT (Artigo) FROM Artigos WHERE Preco>=5;
p) Contar o número de fornecedores distintos através da tabela artigos.
SELECT COUNT (Fornecedores) FROM Artigos;
q) Somar o preço de todos os artigos.
SELECT SUM (Preco) FROM Artigos;
r) Calcular a média de preço de todos os artigos.
SELECT AVG (Preco) FROM Artigos;
s) Calcular a média de preço de todos os artigos com preço inferior a 5.
SELECT AVG (Artigo) FROM Artigos WHERE Preco>5;
t) Mostrar o artigo com o preço mais elevado.
SELECT Artigo, MAX (Preco) FROM Artigos;
u) Mostrar o artigo com o preço mais baixo.
SELECT Artigo, MIN (Preco) FROM Artigos;
v) Mostrar o artigo com o preço mais baixo proveniente do fornecedor “F101”.
SELECT Artigo, MIN (Preco) FROM Artigos WHERE CodFornecedor LIKE F101;
5