Exemplos de agregação
Agregacao.sql — SQL code, 4 kB (4295 bytes)
Conteúdo do arquivo
use Teste go create table Classe ( cod_clas int not null primary key, nome_classe varchar(35) not null ) Go create table Produto ( cod_prod int not null primary key, cod_clas int foreign key references Classe (cod_clas), tipo_prod int not null, nome_prod varchar(35) not null, qtd_prod smallint not null, val_prod decimal(12,2) not null ) GO INSERT INTO Classe values (1,'Alemntos') INSERT INTO Classe values (2,'M�veis') INSERT INTO Classe values (3,'Inform�tica') INSERT INTO Classe values (4,'Cama e mesa') INSERT INTO Classe values (5,'Limpeza') INSERT INTO Produto Values (1,1,1,'Arroz',100,1.50) INSERT INTO Produto Values (2,1,1,'feij�o',1000,2.50) INSERT INTO Produto Values (3,1,1,'Carne',250,30.50) INSERT INTO Produto Values (4,1,1,'Peixe',5,18.50) INSERT INTO Produto Values (5,1,1,'Frutas',3,4.50) INSERT INTO Produto Values (6,2,1,'Casa cidade',1,150000) INSERT INTO Produto Values (7,2,1,'Casa Fazenda',1,50000) INSERT INTO Produto Values (8,2,1,'Cama casal',1,30000) INSERT INTO Produto Values (9,2,1,'Casa solteiro',1,15000) INSERT INTO Produto Values (10,2,1,'Geladeira',1,5000) select * from Produto update Produto Set nome_prod = 'Mesa da sala de jantar', val_prod='3500' where cod_prod = 7 update Classe set nome_classe = 'Eletrodom�stico' where cod_clas = 2 update Produto set tipo_prod = 2 where cod_prod between 6 and 10 select * from Produto select * from classe update classe set nome_classe = 'Material Cozinha' where cod_clas =4 INSERT INTO Produto Values (11,3,3,'Notebook dell',10, 3500) INSERT INTO Produto Values (12,3,3,'Notebook sony',11, 5500) INSERT INTO Produto Values (13,3,3,'Mac',15, 9500) INSERT INTO Produto Values (14,3,3,'Impressora PHP',50, 500) INSERT INTO Produto Values (15,3,3,'Roterador DLink',20, 350) INSERT INTO Produto Values (16,3,3,'Faqueiro',1, 3500) INSERT INTO Produto Values (17,3,3,'Pratos',24, 10) INSERT INTO Produto Values (18,3,3,'xicaras',12, 5) INSERT INTO Produto Values (19,3,3,'Copos para �gua',12, 5) INSERT INTO Produto Values (20,3,3,'Panelas tramotina',5, 150) INSERT INTO Produto Values (21,5,5,'Sab�o em p�',1, 5) INSERT INTO Produto Values (22,5,5,'�gua sanit�ria',5, 5.50) INSERT INTO Produto Values (23,5,5,'Detergetes',10, 4.50) INSERT INTO Produto Values (24,5,5,'Sabonetes',10, 6.70) INSERT INTO Produto Values (55,5,5,'Pasta de dente',20, 3.50) select * from produto update produto set cod_clas = 4, tipo_prod = 4 where cod_prod between 15 and 20 select avg(val_prod) as m�dia from produto select avg(all qtd_prod) as m�dia_qt from produto where cod_clas = 1 select avg(distinct qtd_prod) as m�dia_qt from produto where cod_clas = 1 select count(*) from produto where cod_clas=1 select count(cod_clas) from produto select max(val_prod) from produto select min(val_prod) from produto select sum(qtd_prod) from produto select tipo_prod, sum(qtd_prod * val_prod) as Total_em_Estoque from Produto Group by tipo_prod select cod_clas, sum(qtd_prod * val_prod) as Total_em_Estoque from Produto Group by cod_clas having sum(qtd_prod * val_prod) < 3000 SELECT Tipo_Prod, Nome_Prod, SUM(Qtd_Prod * Val_Prod) AS Estoque FROM Produto GROUP BY Tipo_Prod, Nome_Prod Order By Tipo_Prod SELECT Tipo_Prod, Nome_Prod, SUM(Qtd_Prod * Val_Prod) AS Estoque FROM Produto GROUP BY Tipo_Prod, Nome_Prod WITH ROLLUP SELECT Tipo_Prod, Nome_Prod, SUM(Qtd_Prod * Val_Prod) AS Estoque FROM Produto GROUP BY Tipo_Prod, Nome_Prod WITH CUBE SELECT Tipo_Prod, GROUPING(Tipo_Prod) as [� Total Agrupado ?], SUM(Qtd_Prod ) AS Val_Estoque FROM Produto GROUP BY Tipo_Prod WITH ROLLUP SELECT Tipo_Prod, Nome_Prod, Qtd_Prod FROM Produto order by tipo_prod, nome_prod COMPUTE SUM(Qtd_Prod) BY Tipo_Prod select tipo_prod, nome_prod, qtd_prod, Total = qtd_prod * val_prod from produto Order By tipo_prod, nome_prod COMPUTE SUM(qtd_prod * val_Prod) BY tipo_prod SELECT Tipo_Prod, Nome_Prod, Qtd_Prod, Total = Qtd_Prod * Val_Prod FROM Produto ORDER BY Tipo_Prod, Nome_Prod compute SUM(Qtd_Prod * Val_Prod) BY Tipo_Prod