SlideShare una empresa de Scribd logo
FACULTAD DE INGENIERIA INDUSTRIAL Y DE SISTEMAS
ESCUELA PROFESIONAL DE INGENIERIA DE SISTEMAS
Base de Datos - SQL
Autor: Fernando Huamaní Ramos
Caso 2 - Sistema de Facturación
CLI (Cliente) = {dni, nya, sexo, edad, dir, tel, zona}
RU (Rubros) = {codr, desc_ru}
ART (Artículo) = {coda, desc_art, stock, pto_rep (punto de reposición),
codr, precio (precio actual)}
FAC (Factura) = {nrofact, fecha, dni}
REM (Remito) = {nrorem, fecha, nrofact}
LÍ-F (Línea-Factura) = { nrofact, coda, cant, precio (precio al momento
de la venta)}
LÍ-R (Línea-Remito) = { nrorem, coda, cant}
1.- Mostrar el código, la descripción y el stock de los artículos.
SELECT coda, desc_art , stock FROM ARTICULO;
2.- Obtener los artículos (código del artículo, descripción y stock) cuyo stock
es mayor a 100 y que pertenezcan al rubro R01.
SELECT a.coda, a.desc_art , a.stock , b.CODR
FROM ARTICULO a, RUBRO b
WHERE a.STOCK > 100 and b.CODR = 'R01';
3. Obtener los artículos que se deberían reponer (código del artículo, descripción y
stock); es decir, el stock es menor o igual al punto de reposición
SELECT coda, desc_art, stock
FROM ARTICULO
WHERE stock <= 1;
4. Mostrar a que rubro pertenece cada artículo (obteniendo descripción del artículo y del rubro).
SELECT desc_art, desc_ru
FROM ARTICULO , RUBRO;
5. Obtener el código y la descripción del artículo, de aquellos artículos que pertenecen al rubro limpieza.
SELECT coda , desc_art , desc_ru
FROM ARTICULO , RUBRO
WHERE desc_ru = 'limpieza';
6. Obtener los números de facturas que se emitieron desde el 10/01/2014 hasta el 10/04/2014.
SELECT nrofact
FROM Factura
WHERE nrofact between 10/01/2014 and 10/04/2014;
7. Mostrar el nombre de los clientes que viven en la zona de Santa Lucia.
SELECT nya
FROM Cliente
WHERE zona = 'Santa lucia';
8. Obtener el nombre de los clientes que viven en la misma zona que Rita Pérez (DNI:
38.498.425).
SELECT zona
FROM Cliente
WHERE nya ='Rita Perez' and DNI = '38.498.425' ;
SELECT NYA
FROM Cliente
where zona = 'surco';
9. Obtener el nombre de los clientes que han comprado más de un producto; es decir, en la misma
factura compro distintos tipos de productos sin importar la cantidad de c/u de ellos.
SELECT NYA
FROM Cliente, linea_factura
WHERE coda <> 0;
10. Mostrar el nombre de los clientes que viven en la zona de Santa Lucia o en la zona de Rawson o
en la zona de Rivadavia.
SELECT NYA
FROM Cliente
WHERE zona = 'Santa lucia ' or zona = 'Rawson' or zona = 'Rivadavia';
11. Mostrar los clientes (el dni y el nombre) que han comprado artículos del rubro limpieza y también
han comprado artículos del rubro perfumería.
SELECT NYA , DNI
FROM Cliente , rubro
WHERE desc_ru='limpieza' or desc_ru= 'perfumeria';
12. Mostrar los clientes (el dni y el nombre) que no viven en la zona de Capital.
SELECT NYA , DNI
FROM Cliente
WHERE zona <> 'capital';
13. Mostrar los clientes (el dni y el nombre) que no han comprado artículos del rubro librería.
SELECT NYA , DNI
FROM Cliente , rubro
WHERE desc_ru<> 'liberia';
14. Mostrar las facturas (todos los datos) que posean artículos pendientes; es decir, las facturas que
poseen artículos pendientes (faltan enviar artículos). Considere que siempre se entrega la cantidad
total en el remito; es decir, la cantidad de la factura coincide con la cantidad del remito).
SELECT NYA , DNI
FROM Cliente , rubro
WHERE desc_ru<> 'liberia';
15. Mostrar los clientes (todos los datos) que entre sus facturas donde han comprado todos los
artículos.
SELECT NYA , DNI, sexo, edad, dir, tel , zona
FROM Cliente , factura
WHERE nrofact <> ' ';
16. Mostrar la cantidad total de desodorante Rexona Men que se han vendido.
SELECT coda
FROM articulo
WHERE desc_art = 'Rexona men ';
SELECT cant
FROM Linea_factura
WHERE coda = 'b03';
17. Mostrar el nombre del artículo mas vendido (en cantidad total).
SELECT Linea factura.coda, Sum(linea factura.cant) AS Expr1
FROM Linea factura
GROUP BY linea factura.coda
b) Sobre el esquema de base de dato planteado en el Caso 2 - Sistema de Facturación,
enuncie las consultas en SQL para actualizarla:
Inserte nuevos Clientes con los siguientes datos:
< 14895399, Perez Edgar, M, 35, Hipólito Irigoyen 528, 4222935, Rawson >
< 24835599, González Rosa, F, 50, Hipólito Irigoyen 528, 4229115, Rivadavia >
< 34895399, Fernández Luis, M, 28, Hipólito Irigoyen 528, 4293538, Santa Lucia >
< 17895399, Ruiz Analía, F, 18, Hipólito Irigoyen 528, 4258912, Pósito >
2. Inserte el nuevo rubro con los siguientes datos:
< R08 , Lacteos >
3. Inserte el nuevo artículo con los siguientes datos:
< A21, Yogurt Entero, 100, 25, R08, 10 >
create table Cliente(dni varchar(20) primary key, nya varchar(45), sexo varchar(1),edad INT,dir
varchar(35),tel INT,zona varchar(35));
insert into Cliente values ('14895399','Perez Edgar','M','35','Hipólito Irigoyen
528,','4222935','Rawson');
insert into Cliente values ('24835599','González Rosa','F','50','Hipólito Irigoyen
528','4229115','Rivadavia');
insert into Cliente values ('34895399','Fernández Luis','M','28','Hipólito Irigoyen
528','4293538','Santa Lucia');
insert into Cliente values ('17895399','Ruiz Analía','F','18','Hipólito Irigoyen 528','4258912','Pósito');
create table Rubro(codr varchar(5), desc_ru varchar(20) );
insert into Rubro values ('R08','Lacteos');
create table Factura(nrofact INT, fecha Date, dni INT);
create table Remito(nrorem INT,fecha date, nrofact INT);
create table Linea facturas (nrofact int, coda varchar(20) ,cant INT, precio real);
create table Linea remito(nrorem int,coda int, cant int );
create table Articulo (coda varchar(5), desc_art varchar(20), stock INT, pto_rep INT, codr
varchar(20), precio real);
insert into Articulo values ('A21','Yogurt Entero','100', '25', 'R08', '10');
C. Sobre el esquema de base de dato planteado en el Caso 2 - Sistema de Facturación,
realice las siguientes vistas:
1. Una Vista llamada Reponer que contenga los siguientes atributos: coda, desc_art, stock,
pto_rep. La vista deberá obtener los artículos que se deberán reponer
CREATE OR REPLACE VIEW Reponer AS
SELECT coda, desc_art, stock, pto_rep
FROM articulo
WHERE pto_rep <= '1';
select * from Reponer;
COMPSEG (Compañía de Seguros) = {cuit, nomC, domi, tel}
VEHI (Vehículos) = {pat, modelo, tipo (Moto, Auto, Camioneta o Camión), cuit,
cm, dni}
MARCAS = {cm, descrip}
PERS (Personas) = {dni, nom, edad, domi, tel}
ACTA = {nroActa, lugar, fecha, hora}
INVO (Involucrados) = {nroActa, pat, dni, conductor (si/no), daño (sin daño,
leve, grave o fatal)}
Resuelva las consultas planteadas usando el lenguaje SQL.
Caso 4 - Accidentes de Tránsito
1. Obtener el nombre de las compañías de Seguros que tienen asegurados todos los tipos de
vehículos.
SELECT nomC
FROM COMPSEG, VEHI
WHERE tipo = 'Moto' or tipo = 'Auto' or = tipo 'Camioneta ' or tipo= ' Camión';
2. Obtener todos los datos de los vehículos que no han tenido accidentes fatales.
SELECT pat, modelo, tipo ,cuit, cm, dni
FROM invo, VEHI
WHERE daño <> 'fatal';
3. Obtener la patente de los autos involucrados en choques, en los que viajaba solamente el
conductor (es decir, no tenía acompañantes).
SELECT pat
FROM pers, invo;
WHERE daño = 'fatal' or daño = 'sin daño' or daño = 'leve' or daño = 'grave' ;
SELECT COUNT (Distinct dni)
FROM pers;
4. Obtener todos los datos de las personas que han chocado manejando su propio vehículo.
SELECT dni, nom, edad, domi, tel
FROM pers, invo;
WHERE daño = 'fatal' or daño = 'sin daño' or daño = 'leve' or daño = 'grave' and
conductor='si' ;
6. Obtener las personas (dni y nombre) que estuvieron involucradas en accidentes con daño
“leve” y también estuvieron involucradas en accidentes sin daño.
SELECT dni, nom
FROM pers, invo;
WHERE daño = 'sin daño' or daño = 'leve' ;
b) Sobre el esquema de base de dato planteado en el Caso 4 - Accidentes de Tránsito,
enuncie las consultas en SQL para actualizarla:
1. Inserte nuevas Personas con los siguientes datos:
< 14895399, Ruiz Mathías, 34, Hipólito Irigoyen 528, 4222935 >
< 24835599, González Emiliano, 56, Av. Central 128 -O-, 4229115 >
create table COMPSEG (cuit varchar(20) primary key , nomC varchar(40), domi varchar(40), tel
INT);
create table VEHI (pat varchar(40), primary key modelo varchar(40) , tipo varchar(40) , cuit
varchar(40), cm varchar(40), dni int);
create table MARCAS (cm varchar(40) primary key, descrip varchar(40));
create table PERS (dni INT primary key, nom varchar(40), edad INT, domi varchar(40), tel INT);
insert into PERS values ('14895399',' Ruiz Mathías','34','Hipólito Irigoyen 528,','4222935');
insert into PERS values ('24835599',' González Emiliano ','56',' Av. Central 128 -O-,','4229115');
create table INVO (nroActa int primary key, pat varchar(40), dni int, conductor varchar(40), daño
varchar(40) );
2. Actualice el teléfono y el domicilio de la persona González Emiliano por el número 4312548 y el
domicilio Juan Jufre 345 -N-.
Update pers
Set domi = 'Juan Jufre 345 -N-.',
Set tel = '4312548'
Where nom = 'González Emiliano'
c) Sobre el esquema de base de dato planteado en el Caso 4 - Accidentes de Tránsito, realice
las siguientes vistas:
1. Una Vista llamada AccidentesLeves que contenga los siguientes atributos: dni y nombre. La
vista deberá obtener las personas que estuvieron involucradas en accidentes con daño “leve”.
CREATE VIEW Accidentesleves AS
SELECT dni, nombre
FROM pers
WHERE daño = 'leve';
select * from Accidentesleves;

Más contenido relacionado

Similar a Sql

Ejercicios SQL
Ejercicios SQLEjercicios SQL
Ejercicios SQL
Ricardo Alvarez
 
Taller Transact SQL ITProsDC - T2
Taller Transact SQL ITProsDC - T2Taller Transact SQL ITProsDC - T2
Taller Transact SQL ITProsDC - T2
Julián Castiblanco
 
Practico sql - Jose Luis Cristobal Mateo
Practico sql - Jose Luis Cristobal MateoPractico sql - Jose Luis Cristobal Mateo
Practico sql - Jose Luis Cristobal Mateo
Jose Luis Cristobal Mateo
 
Ejercicios sql (1)
Ejercicios sql (1)Ejercicios sql (1)
Ejercicios sql (1)
Noemy Gutierrez
 
Bases de Datos CBTis172
Bases de Datos CBTis172Bases de Datos CBTis172
Bases de Datos CBTis172PaulinaHdz1
 
Trabajo de base de datos ♥ ANA PAULINA HERNANDEZ RAMOS ♥
Trabajo de base de datos ♥ ANA PAULINA HERNANDEZ RAMOS ♥Trabajo de base de datos ♥ ANA PAULINA HERNANDEZ RAMOS ♥
Trabajo de base de datos ♥ ANA PAULINA HERNANDEZ RAMOS ♥
Isabel Vlz MoOrales
 
Taller Básico Sentencias SQL
Taller Básico Sentencias SQL Taller Básico Sentencias SQL
Taller Básico Sentencias SQL
Julián Castiblanco
 
Base de datos para empresas
Base de datos para empresasBase de datos para empresas
Base de datos para empresas
PaulinaHdz1
 
PROYECTODEBASEDEDATOSJESSI
PROYECTODEBASEDEDATOSJESSIPROYECTODEBASEDEDATOSJESSI
PROYECTODEBASEDEDATOSJESSI
hachi25
 
Ejercicios SQL
Ejercicios SQLEjercicios SQL
Judith montilla
Judith montillaJudith montilla
Judith montilla
Veronica Montilla
 
Ejercicios De Sql BD
Ejercicios De Sql BDEjercicios De Sql BD
Ejercicios De Sql BDCarlos Arturo
 
Ejercicios SQL
Ejercicios SQLEjercicios SQL
Ejercicios SQL
Giovana Teodoro Gonzaga
 
Proyecto BD parcial 3 ♥ ISSA ♥ VELEZ♥ MORALES
Proyecto BD parcial 3 ♥ ISSA ♥ VELEZ♥ MORALESProyecto BD parcial 3 ♥ ISSA ♥ VELEZ♥ MORALES
Proyecto BD parcial 3 ♥ ISSA ♥ VELEZ♥ MORALES
Isabel Vlz MoOrales
 
Teoria de sql y ejercicios
Teoria de sql y ejerciciosTeoria de sql y ejercicios
Teoria de sql y ejercicios
Juan Villena
 
Soluciones ejercicios 3
Soluciones ejercicios 3Soluciones ejercicios 3
Soluciones ejercicios 3
yover01
 
Taller Consultas Básicas SQL Server No 1
Taller Consultas Básicas SQL Server No 1Taller Consultas Básicas SQL Server No 1
Taller Consultas Básicas SQL Server No 1
Julián Castiblanco
 
Ejercicios 2 y 4
Ejercicios 2 y 4Ejercicios 2 y 4
Ejercicios 2 y 4
Miguel Torres Vargas
 

Similar a Sql (20)

Ejercicios SQL
Ejercicios SQLEjercicios SQL
Ejercicios SQL
 
Taller Transact SQL ITProsDC - T2
Taller Transact SQL ITProsDC - T2Taller Transact SQL ITProsDC - T2
Taller Transact SQL ITProsDC - T2
 
Practico sql - Jose Luis Cristobal Mateo
Practico sql - Jose Luis Cristobal MateoPractico sql - Jose Luis Cristobal Mateo
Practico sql - Jose Luis Cristobal Mateo
 
Ing gualpa sql
Ing gualpa sqlIng gualpa sql
Ing gualpa sql
 
Ejercicios sql (1)
Ejercicios sql (1)Ejercicios sql (1)
Ejercicios sql (1)
 
Bases de Datos CBTis172
Bases de Datos CBTis172Bases de Datos CBTis172
Bases de Datos CBTis172
 
Trabajo de base de datos ♥ ANA PAULINA HERNANDEZ RAMOS ♥
Trabajo de base de datos ♥ ANA PAULINA HERNANDEZ RAMOS ♥Trabajo de base de datos ♥ ANA PAULINA HERNANDEZ RAMOS ♥
Trabajo de base de datos ♥ ANA PAULINA HERNANDEZ RAMOS ♥
 
Taller Básico Sentencias SQL
Taller Básico Sentencias SQL Taller Básico Sentencias SQL
Taller Básico Sentencias SQL
 
Base de datos para empresas
Base de datos para empresasBase de datos para empresas
Base de datos para empresas
 
PROYECTODEBASEDEDATOSJESSI
PROYECTODEBASEDEDATOSJESSIPROYECTODEBASEDEDATOSJESSI
PROYECTODEBASEDEDATOSJESSI
 
Ejercicios SQL
Ejercicios SQLEjercicios SQL
Ejercicios SQL
 
Judith montilla
Judith montillaJudith montilla
Judith montilla
 
Ejercicios
Ejercicios Ejercicios
Ejercicios
 
Ejercicios De Sql BD
Ejercicios De Sql BDEjercicios De Sql BD
Ejercicios De Sql BD
 
Ejercicios SQL
Ejercicios SQLEjercicios SQL
Ejercicios SQL
 
Proyecto BD parcial 3 ♥ ISSA ♥ VELEZ♥ MORALES
Proyecto BD parcial 3 ♥ ISSA ♥ VELEZ♥ MORALESProyecto BD parcial 3 ♥ ISSA ♥ VELEZ♥ MORALES
Proyecto BD parcial 3 ♥ ISSA ♥ VELEZ♥ MORALES
 
Teoria de sql y ejercicios
Teoria de sql y ejerciciosTeoria de sql y ejercicios
Teoria de sql y ejercicios
 
Soluciones ejercicios 3
Soluciones ejercicios 3Soluciones ejercicios 3
Soluciones ejercicios 3
 
Taller Consultas Básicas SQL Server No 1
Taller Consultas Básicas SQL Server No 1Taller Consultas Básicas SQL Server No 1
Taller Consultas Básicas SQL Server No 1
 
Ejercicios 2 y 4
Ejercicios 2 y 4Ejercicios 2 y 4
Ejercicios 2 y 4
 

Último

Presentación sobre la geometría, aplicaciones y ramas
Presentación sobre la geometría, aplicaciones y ramasPresentación sobre la geometría, aplicaciones y ramas
Presentación sobre la geometría, aplicaciones y ramas
JosMuoz943377
 
Desarrollo de habilidades de pensamiento
Desarrollo de habilidades de pensamientoDesarrollo de habilidades de pensamiento
Desarrollo de habilidades de pensamiento
ManuelaReina3
 
PPT Interes-Simple-pptx.pptx-ejercicios.
PPT Interes-Simple-pptx.pptx-ejercicios.PPT Interes-Simple-pptx.pptx-ejercicios.
PPT Interes-Simple-pptx.pptx-ejercicios.
MELANYANELKACRUZLEON
 
Informe de violencia mayo 2024 - Multigremial Mayo.pdf
Informe de violencia mayo 2024 - Multigremial Mayo.pdfInforme de violencia mayo 2024 - Multigremial Mayo.pdf
Informe de violencia mayo 2024 - Multigremial Mayo.pdf
Emisor Digital
 
e learning^.pptxdieguearmandozuñiga. Comhot
e learning^.pptxdieguearmandozuñiga. Comhote learning^.pptxdieguearmandozuñiga. Comhot
e learning^.pptxdieguearmandozuñiga. Comhot
diegozuniga768
 
mapa conceptual y mental para niños de primaria y secundaria
mapa conceptual y mental para niños de primaria y secundariamapa conceptual y mental para niños de primaria y secundaria
mapa conceptual y mental para niños de primaria y secundaria
ManuelAlbertoHeredia1
 
REPORTE DE HOMICIDIO DOLOSO-MAYO 2024.pdf
REPORTE DE HOMICIDIO DOLOSO-MAYO 2024.pdfREPORTE DE HOMICIDIO DOLOSO-MAYO 2024.pdf
REPORTE DE HOMICIDIO DOLOSO-MAYO 2024.pdf
IrapuatoCmovamos
 
Instituciones financieras globales por efectivo disponible (2024).pdf
Instituciones financieras globales por efectivo disponible (2024).pdfInstituciones financieras globales por efectivo disponible (2024).pdf
Instituciones financieras globales por efectivo disponible (2024).pdf
JC Díaz Herrera
 
Países_por_participacion_porcentual_en_el PNB global (2024) .pdf
Países_por_participacion_porcentual_en_el PNB global (2024) .pdfPaíses_por_participacion_porcentual_en_el PNB global (2024) .pdf
Países_por_participacion_porcentual_en_el PNB global (2024) .pdf
JC Díaz Herrera
 
Desarrollo de Habilidades de Pensamiento Informatica
Desarrollo de Habilidades de Pensamiento InformaticaDesarrollo de Habilidades de Pensamiento Informatica
Desarrollo de Habilidades de Pensamiento Informatica
floralbaortega88
 
ACOMPAÑAMIENTO INTEGRAL DE VALORES .pptx
ACOMPAÑAMIENTO INTEGRAL DE VALORES .pptxACOMPAÑAMIENTO INTEGRAL DE VALORES .pptx
ACOMPAÑAMIENTO INTEGRAL DE VALORES .pptx
MelanieYuksselleCarr
 
sistema paralingüística fhdjsjsbsnnssnnsbs
sistema paralingüística fhdjsjsbsnnssnnsbssistema paralingüística fhdjsjsbsnnssnnsbs
sistema paralingüística fhdjsjsbsnnssnnsbs
SantiagoMejia99
 
contraguerrilla.pdf sobre anti emboscadas
contraguerrilla.pdf sobre anti emboscadascontraguerrilla.pdf sobre anti emboscadas
contraguerrilla.pdf sobre anti emboscadas
DieguinhoSalazar
 
Claves Ipsos numero 29 --- Mayo 2024.pdf
Claves Ipsos numero 29 --- Mayo 2024.pdfClaves Ipsos numero 29 --- Mayo 2024.pdf
Claves Ipsos numero 29 --- Mayo 2024.pdf
Emisor Digital
 
Ojiva porcentual para el análisis de datos
Ojiva porcentual para el análisis de datosOjiva porcentual para el análisis de datos
Ojiva porcentual para el análisis de datos
JaimeYael
 

Último (15)

Presentación sobre la geometría, aplicaciones y ramas
Presentación sobre la geometría, aplicaciones y ramasPresentación sobre la geometría, aplicaciones y ramas
Presentación sobre la geometría, aplicaciones y ramas
 
Desarrollo de habilidades de pensamiento
Desarrollo de habilidades de pensamientoDesarrollo de habilidades de pensamiento
Desarrollo de habilidades de pensamiento
 
PPT Interes-Simple-pptx.pptx-ejercicios.
PPT Interes-Simple-pptx.pptx-ejercicios.PPT Interes-Simple-pptx.pptx-ejercicios.
PPT Interes-Simple-pptx.pptx-ejercicios.
 
Informe de violencia mayo 2024 - Multigremial Mayo.pdf
Informe de violencia mayo 2024 - Multigremial Mayo.pdfInforme de violencia mayo 2024 - Multigremial Mayo.pdf
Informe de violencia mayo 2024 - Multigremial Mayo.pdf
 
e learning^.pptxdieguearmandozuñiga. Comhot
e learning^.pptxdieguearmandozuñiga. Comhote learning^.pptxdieguearmandozuñiga. Comhot
e learning^.pptxdieguearmandozuñiga. Comhot
 
mapa conceptual y mental para niños de primaria y secundaria
mapa conceptual y mental para niños de primaria y secundariamapa conceptual y mental para niños de primaria y secundaria
mapa conceptual y mental para niños de primaria y secundaria
 
REPORTE DE HOMICIDIO DOLOSO-MAYO 2024.pdf
REPORTE DE HOMICIDIO DOLOSO-MAYO 2024.pdfREPORTE DE HOMICIDIO DOLOSO-MAYO 2024.pdf
REPORTE DE HOMICIDIO DOLOSO-MAYO 2024.pdf
 
Instituciones financieras globales por efectivo disponible (2024).pdf
Instituciones financieras globales por efectivo disponible (2024).pdfInstituciones financieras globales por efectivo disponible (2024).pdf
Instituciones financieras globales por efectivo disponible (2024).pdf
 
Países_por_participacion_porcentual_en_el PNB global (2024) .pdf
Países_por_participacion_porcentual_en_el PNB global (2024) .pdfPaíses_por_participacion_porcentual_en_el PNB global (2024) .pdf
Países_por_participacion_porcentual_en_el PNB global (2024) .pdf
 
Desarrollo de Habilidades de Pensamiento Informatica
Desarrollo de Habilidades de Pensamiento InformaticaDesarrollo de Habilidades de Pensamiento Informatica
Desarrollo de Habilidades de Pensamiento Informatica
 
ACOMPAÑAMIENTO INTEGRAL DE VALORES .pptx
ACOMPAÑAMIENTO INTEGRAL DE VALORES .pptxACOMPAÑAMIENTO INTEGRAL DE VALORES .pptx
ACOMPAÑAMIENTO INTEGRAL DE VALORES .pptx
 
sistema paralingüística fhdjsjsbsnnssnnsbs
sistema paralingüística fhdjsjsbsnnssnnsbssistema paralingüística fhdjsjsbsnnssnnsbs
sistema paralingüística fhdjsjsbsnnssnnsbs
 
contraguerrilla.pdf sobre anti emboscadas
contraguerrilla.pdf sobre anti emboscadascontraguerrilla.pdf sobre anti emboscadas
contraguerrilla.pdf sobre anti emboscadas
 
Claves Ipsos numero 29 --- Mayo 2024.pdf
Claves Ipsos numero 29 --- Mayo 2024.pdfClaves Ipsos numero 29 --- Mayo 2024.pdf
Claves Ipsos numero 29 --- Mayo 2024.pdf
 
Ojiva porcentual para el análisis de datos
Ojiva porcentual para el análisis de datosOjiva porcentual para el análisis de datos
Ojiva porcentual para el análisis de datos
 

Sql

  • 1. FACULTAD DE INGENIERIA INDUSTRIAL Y DE SISTEMAS ESCUELA PROFESIONAL DE INGENIERIA DE SISTEMAS Base de Datos - SQL Autor: Fernando Huamaní Ramos
  • 2. Caso 2 - Sistema de Facturación CLI (Cliente) = {dni, nya, sexo, edad, dir, tel, zona} RU (Rubros) = {codr, desc_ru} ART (Artículo) = {coda, desc_art, stock, pto_rep (punto de reposición), codr, precio (precio actual)} FAC (Factura) = {nrofact, fecha, dni} REM (Remito) = {nrorem, fecha, nrofact} LÍ-F (Línea-Factura) = { nrofact, coda, cant, precio (precio al momento de la venta)} LÍ-R (Línea-Remito) = { nrorem, coda, cant}
  • 3. 1.- Mostrar el código, la descripción y el stock de los artículos. SELECT coda, desc_art , stock FROM ARTICULO; 2.- Obtener los artículos (código del artículo, descripción y stock) cuyo stock es mayor a 100 y que pertenezcan al rubro R01. SELECT a.coda, a.desc_art , a.stock , b.CODR FROM ARTICULO a, RUBRO b WHERE a.STOCK > 100 and b.CODR = 'R01'; 3. Obtener los artículos que se deberían reponer (código del artículo, descripción y stock); es decir, el stock es menor o igual al punto de reposición SELECT coda, desc_art, stock FROM ARTICULO WHERE stock <= 1;
  • 4. 4. Mostrar a que rubro pertenece cada artículo (obteniendo descripción del artículo y del rubro). SELECT desc_art, desc_ru FROM ARTICULO , RUBRO; 5. Obtener el código y la descripción del artículo, de aquellos artículos que pertenecen al rubro limpieza. SELECT coda , desc_art , desc_ru FROM ARTICULO , RUBRO WHERE desc_ru = 'limpieza'; 6. Obtener los números de facturas que se emitieron desde el 10/01/2014 hasta el 10/04/2014. SELECT nrofact FROM Factura WHERE nrofact between 10/01/2014 and 10/04/2014;
  • 5. 7. Mostrar el nombre de los clientes que viven en la zona de Santa Lucia. SELECT nya FROM Cliente WHERE zona = 'Santa lucia'; 8. Obtener el nombre de los clientes que viven en la misma zona que Rita Pérez (DNI: 38.498.425). SELECT zona FROM Cliente WHERE nya ='Rita Perez' and DNI = '38.498.425' ; SELECT NYA FROM Cliente where zona = 'surco';
  • 6. 9. Obtener el nombre de los clientes que han comprado más de un producto; es decir, en la misma factura compro distintos tipos de productos sin importar la cantidad de c/u de ellos. SELECT NYA FROM Cliente, linea_factura WHERE coda <> 0; 10. Mostrar el nombre de los clientes que viven en la zona de Santa Lucia o en la zona de Rawson o en la zona de Rivadavia. SELECT NYA FROM Cliente WHERE zona = 'Santa lucia ' or zona = 'Rawson' or zona = 'Rivadavia'; 11. Mostrar los clientes (el dni y el nombre) que han comprado artículos del rubro limpieza y también han comprado artículos del rubro perfumería. SELECT NYA , DNI FROM Cliente , rubro WHERE desc_ru='limpieza' or desc_ru= 'perfumeria';
  • 7. 12. Mostrar los clientes (el dni y el nombre) que no viven en la zona de Capital. SELECT NYA , DNI FROM Cliente WHERE zona <> 'capital'; 13. Mostrar los clientes (el dni y el nombre) que no han comprado artículos del rubro librería. SELECT NYA , DNI FROM Cliente , rubro WHERE desc_ru<> 'liberia';
  • 8. 14. Mostrar las facturas (todos los datos) que posean artículos pendientes; es decir, las facturas que poseen artículos pendientes (faltan enviar artículos). Considere que siempre se entrega la cantidad total en el remito; es decir, la cantidad de la factura coincide con la cantidad del remito). SELECT NYA , DNI FROM Cliente , rubro WHERE desc_ru<> 'liberia'; 15. Mostrar los clientes (todos los datos) que entre sus facturas donde han comprado todos los artículos. SELECT NYA , DNI, sexo, edad, dir, tel , zona FROM Cliente , factura WHERE nrofact <> ' ';
  • 9. 16. Mostrar la cantidad total de desodorante Rexona Men que se han vendido. SELECT coda FROM articulo WHERE desc_art = 'Rexona men '; SELECT cant FROM Linea_factura WHERE coda = 'b03'; 17. Mostrar el nombre del artículo mas vendido (en cantidad total). SELECT Linea factura.coda, Sum(linea factura.cant) AS Expr1 FROM Linea factura GROUP BY linea factura.coda
  • 10. b) Sobre el esquema de base de dato planteado en el Caso 2 - Sistema de Facturación, enuncie las consultas en SQL para actualizarla: Inserte nuevos Clientes con los siguientes datos: < 14895399, Perez Edgar, M, 35, Hipólito Irigoyen 528, 4222935, Rawson > < 24835599, González Rosa, F, 50, Hipólito Irigoyen 528, 4229115, Rivadavia > < 34895399, Fernández Luis, M, 28, Hipólito Irigoyen 528, 4293538, Santa Lucia > < 17895399, Ruiz Analía, F, 18, Hipólito Irigoyen 528, 4258912, Pósito > 2. Inserte el nuevo rubro con los siguientes datos: < R08 , Lacteos > 3. Inserte el nuevo artículo con los siguientes datos: < A21, Yogurt Entero, 100, 25, R08, 10 >
  • 11. create table Cliente(dni varchar(20) primary key, nya varchar(45), sexo varchar(1),edad INT,dir varchar(35),tel INT,zona varchar(35)); insert into Cliente values ('14895399','Perez Edgar','M','35','Hipólito Irigoyen 528,','4222935','Rawson'); insert into Cliente values ('24835599','González Rosa','F','50','Hipólito Irigoyen 528','4229115','Rivadavia'); insert into Cliente values ('34895399','Fernández Luis','M','28','Hipólito Irigoyen 528','4293538','Santa Lucia'); insert into Cliente values ('17895399','Ruiz Analía','F','18','Hipólito Irigoyen 528','4258912','Pósito'); create table Rubro(codr varchar(5), desc_ru varchar(20) ); insert into Rubro values ('R08','Lacteos'); create table Factura(nrofact INT, fecha Date, dni INT); create table Remito(nrorem INT,fecha date, nrofact INT); create table Linea facturas (nrofact int, coda varchar(20) ,cant INT, precio real); create table Linea remito(nrorem int,coda int, cant int );
  • 12. create table Articulo (coda varchar(5), desc_art varchar(20), stock INT, pto_rep INT, codr varchar(20), precio real); insert into Articulo values ('A21','Yogurt Entero','100', '25', 'R08', '10'); C. Sobre el esquema de base de dato planteado en el Caso 2 - Sistema de Facturación, realice las siguientes vistas: 1. Una Vista llamada Reponer que contenga los siguientes atributos: coda, desc_art, stock, pto_rep. La vista deberá obtener los artículos que se deberán reponer CREATE OR REPLACE VIEW Reponer AS SELECT coda, desc_art, stock, pto_rep FROM articulo WHERE pto_rep <= '1'; select * from Reponer;
  • 13. COMPSEG (Compañía de Seguros) = {cuit, nomC, domi, tel} VEHI (Vehículos) = {pat, modelo, tipo (Moto, Auto, Camioneta o Camión), cuit, cm, dni} MARCAS = {cm, descrip} PERS (Personas) = {dni, nom, edad, domi, tel} ACTA = {nroActa, lugar, fecha, hora} INVO (Involucrados) = {nroActa, pat, dni, conductor (si/no), daño (sin daño, leve, grave o fatal)} Resuelva las consultas planteadas usando el lenguaje SQL. Caso 4 - Accidentes de Tránsito
  • 14. 1. Obtener el nombre de las compañías de Seguros que tienen asegurados todos los tipos de vehículos. SELECT nomC FROM COMPSEG, VEHI WHERE tipo = 'Moto' or tipo = 'Auto' or = tipo 'Camioneta ' or tipo= ' Camión'; 2. Obtener todos los datos de los vehículos que no han tenido accidentes fatales. SELECT pat, modelo, tipo ,cuit, cm, dni FROM invo, VEHI WHERE daño <> 'fatal';
  • 15. 3. Obtener la patente de los autos involucrados en choques, en los que viajaba solamente el conductor (es decir, no tenía acompañantes). SELECT pat FROM pers, invo; WHERE daño = 'fatal' or daño = 'sin daño' or daño = 'leve' or daño = 'grave' ; SELECT COUNT (Distinct dni) FROM pers; 4. Obtener todos los datos de las personas que han chocado manejando su propio vehículo. SELECT dni, nom, edad, domi, tel FROM pers, invo; WHERE daño = 'fatal' or daño = 'sin daño' or daño = 'leve' or daño = 'grave' and conductor='si' ;
  • 16. 6. Obtener las personas (dni y nombre) que estuvieron involucradas en accidentes con daño “leve” y también estuvieron involucradas en accidentes sin daño. SELECT dni, nom FROM pers, invo; WHERE daño = 'sin daño' or daño = 'leve' ; b) Sobre el esquema de base de dato planteado en el Caso 4 - Accidentes de Tránsito, enuncie las consultas en SQL para actualizarla: 1. Inserte nuevas Personas con los siguientes datos: < 14895399, Ruiz Mathías, 34, Hipólito Irigoyen 528, 4222935 > < 24835599, González Emiliano, 56, Av. Central 128 -O-, 4229115 >
  • 17. create table COMPSEG (cuit varchar(20) primary key , nomC varchar(40), domi varchar(40), tel INT); create table VEHI (pat varchar(40), primary key modelo varchar(40) , tipo varchar(40) , cuit varchar(40), cm varchar(40), dni int); create table MARCAS (cm varchar(40) primary key, descrip varchar(40)); create table PERS (dni INT primary key, nom varchar(40), edad INT, domi varchar(40), tel INT); insert into PERS values ('14895399',' Ruiz Mathías','34','Hipólito Irigoyen 528,','4222935'); insert into PERS values ('24835599',' González Emiliano ','56',' Av. Central 128 -O-,','4229115'); create table INVO (nroActa int primary key, pat varchar(40), dni int, conductor varchar(40), daño varchar(40) );
  • 18. 2. Actualice el teléfono y el domicilio de la persona González Emiliano por el número 4312548 y el domicilio Juan Jufre 345 -N-. Update pers Set domi = 'Juan Jufre 345 -N-.', Set tel = '4312548' Where nom = 'González Emiliano' c) Sobre el esquema de base de dato planteado en el Caso 4 - Accidentes de Tránsito, realice las siguientes vistas: 1. Una Vista llamada AccidentesLeves que contenga los siguientes atributos: dni y nombre. La vista deberá obtener las personas que estuvieron involucradas en accidentes con daño “leve”. CREATE VIEW Accidentesleves AS SELECT dni, nombre FROM pers WHERE daño = 'leve'; select * from Accidentesleves;