Tema: Base de datos algebra
Enviado por Jillian • 23 de Febrero de 2018 • 859 Palabras (4 Páginas) • 563 Visitas
...
al producto cartesiano seguido de una seleccion(de los tuplos que tengan ) y una proyeccion
create table s(sno char(2) primary key, sname varchar(15), estatus int(2), city varchar(20));
insert into s values
("S1", "SMITH",20, "LONDON"),
("S2", "JONES",10, "PARIS"),
("S3", "BLAKE",30, "PARIS"),
("S4", "CLARK",20, "LONDON"),
("S5", "ADAMS",30, "ATHENS");
create table p(pno char(2) primary key, pname varchar(10), color varchar(10), weigth int(2), city varchar(20));
insert into p values
("P1", "NURT","RED", 12, "LONDON"),
("P2", "BLOT","GREES", 17, "PARIS"),
("P3", "SCREW","BLUE", 17, "ROME"),
("P4", "SCREW","RED", 14, "LONDON"),
("P5", "CAM","BLUE", 12, "PARIS"),
("P6", "COG","RED", 19, "LONDON");
S join P=(S times P) where s.city=p.city [sno, sname, status, city, pno, pname, color, weight]
select sno, sname, estatus, s.city, pno, pname, color, weigth from s,p where s.city=p.city order by sno;
_________________________________________________________________________________________
create database partes;
use partes;
create table proveedor(noprovee char(2) primary key, nombre varchar(20), calidad int(2));
insert into proveedor values
("S1", "JUAN", 9),
("S2", "PEDRO", 8),
("S3", "RAMON", 10),
("S4", "ANA", 7),
("S5", "SAUL", 8);
create table partes(noparte char(2) primary key, nomparte varchar(15), color varchar(15));
insert into partes values
("P1", "TUERCA", "GRIS"),
("P2", "CLAVO", "GRIS"),
("P3", "TUERCA", "BLANCO"),
("P4", "LAPIZ", "AMARILLO");
create table suministros(noprovee char(2), noparte char(2), cantidad int(3), primary key(noprovee, noparte),
constraint suministra foreign key(noprovee) references proveedor(noprovee),
constraint es_suministrada foreign key(noparte) references partes(noparte));
insert into suministros values
("S1","P1",100),
("S2","P2",300),
("S2","P3",500),
("S3","P4",200),
("S4","P1",100),
("S4","P2",150),
("S4","P3",200),
("S4","P4",300);
1. Obtener todos los detalles de todas las partes.
select * from partes;
2. Obtener todos los detalles de todos los proveedores.
select * from proveedor;
3. Obtener los nombres de todas las partes.
select nomparte from parte;(proyeccion)
4. Obtener el nombre del proveedor y su calidad de todos los proveedores
select nombre, calidad from proveedor;(proyeccion)
5. Obtener el numero de parte, nombre de las partes de color blanco.
select noparte, nomparte from partes where color="blanco";(seleccion)
6. Obtener el no. de proveedor y el nombre de los proveedores con calidad 9 o mayor;
select noprovee, nombre from proveedor where calidad>=9;(seleccion, proyeccion)
7. Obtener a los proveedores de mayor calidad.
FUNCIONES DE AGREGACIÓN
1. count()-permite contar las instancias
select count(*) from partes;
select count(noprovee) from proveedor;
Manejo de Alias
select count(noprovee) as cantidad_partes from proveedor;
2. sum()-permite sumar las cantidades de un atributo
Que cantidades se suministran en total de la parte P1:
select sum(cantidad) as se_suministran_de_P1 from suministros where noparte="p1";
3. max()-regresa le valor maximo en la tabla
Obtener la calidad mayor de los proveedores:
select max(calidad) from proveedor;
4. min()
5. avg()-Regresa el promedio de un valor
select avg(calidad) from proveedor;
Obtener
...