Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- drop database if exists piezasyproveedores;
- create database piezasyproveedores;
- --drop schema if exists piezasyproveedores;
- create schema if not exists piezasyproveedores;
- set schema
- 'piezasyproveedores';
- grant usage on schema piezasyproveedores to openpg;
- grant create on schema piezasyproveedores to openpg;
- drop table if exists piezas;
- create table piezas (
- codigo int primary key not null,
- Nombre varchar (100) not null
- );
- drop table if exists proveedores;
- create table proveedores (
- Id char (4) primary key not null,
- Nombre varchar (100) not null
- );
- drop table if exists suministra;
- create table suministra(
- codigopieza integer,
- idproveedor varchar(4),
- precio integer,
- primary key (codigopieza, idproveedor)
- );
- INSERT INTO
- piezas
- VALUES
- (1, 'Tornillo');
- INSERT INTO
- piezas
- VALUES
- (2, 'Clavos');
- INSERT INTO
- piezas
- VALUES
- (3, 'Ganchos');
- INSERT INTO
- piezas
- VALUES
- (4, 'Jack Module');
- INSERT INTO
- piezas
- VALUES
- (5, 'CABLE UTP CAT6');
- INSERT INTO
- piezas
- VALUES
- (6, 'RJ45');
- INSERT INTO
- piezas
- VALUES
- (7, 'FDP DE FIBRA');
- INSERT INTO
- piezas
- VALUES
- (8, 'PATHCORD 7-FT');
- INSERT INTO
- piezas
- VALUES
- (9, 'PATHPANEL 24 PORT');
- INSERT INTO
- piezas
- VALUES
- (10, 'GABINETE DE EXTERIOR');
- INSERT INTO
- proveedores
- VALUES
- (1, 'Sinergia Network');
- INSERT INTO
- proveedores
- VALUES
- (2, 'Netsol Soluciones de Redes');
- INSERT INTO
- proveedores
- VALUES
- (3, 'Cisco');
- INSERT INTO
- proveedores
- VALUES
- (4, 'Aruba');
- INSERT INTO
- proveedores
- VALUES
- (5, 'Juniper');
- INSERT INTO
- proveedores
- VALUES
- (6, 'Huawei');
- INSERT INTO
- proveedores
- VALUES
- (7, 'Dish Network');
- INSERT INTO
- proveedores
- VALUES
- (8, 'Mikrotik Corporation');
- INSERT INTO
- proveedores
- VALUES
- (9, 'Netscout');
- INSERT INTO
- proveedores
- VALUES
- (10, 'Microsoft');
- UPDATE
- suministra
- SET
- precio = precio + 1;
- INSERT INTO
- proveedores(id, Nombre)
- VALUES
- ('11', 'Tornillos SL');
- INSERT INTO
- piezas(codigo, Nombre)
- VALUES
- (17, 'Tornillo');
- INSERT codigopiezINTO
- suministra
- VALUES
- (17, 7, 'TOSL'),
- (1500, 5, 'CIS'),
- (500, 1, 'MCST'),
- (50, 4, 'JPNR'),
- (150, 8, 'MCST'),
- (20, 11, 'HWI'),
- (40, 10, 'CIS'),
- (8000, 3, 'CIS'),
- (150, 2, 'ARB'),
- (700, 6, 'MCST'),
- (430, 7, 'MCST');
- set schema
- 'piezasyproveedores';
- --1. Obtener el nombre de todas las piezas.
- select
- nombre
- from piezas;
- --2. Obtener todos los datos de todos los proveedores.
- -- si quieres obtener solo datos de la tabla proveedores
- select
- *
- from proveedores;
- -- si quieres incluir la informacion completa de las piezas que suministra y el precio al que la suministra
- select
- *
- from proveedores;
- --3. Obtener el precio promedio al que se nos suministran las piezas.
- select
- piezas.codigo as codigo_pieza,
- piezas.nombre as nombre_pieza,
- avg(suministra.precio) as precio_promedio
- from piezas
- join suministra
- on suministra.codigopieza = piezas.codigo
- group by
- piezas.codigo
- ;
- --4. Obtener los nombres de los proveedores que suministran la pieza 1.
- select
- proveedores.Nombre as nombre_proveedor
- from proveedores
- join suministra
- on suministra.idproveedor = proveedores.Id
- where
- suministra.codigopieza = 1
- ;
- --5. Obtener los nombres de las piezas suministradas por el proveedor cuyo nombre inicie con βDISβ.
- select
- piezas.Nombre
- from proveedores
- join suministra
- on suministra.idproveedor = proveedores.Id
- join piezas
- on piezas.codigo = suministra.codigopieza
- where
- proveedores.nombre ilike 'DIS%'
- ;
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement