--1.marca sea hyundai, ordenados por nombre de propietario
select * from vehiculo where modelo like upper('hyundai') order by 2; --2.Muestre todos los propietarios cuyo nombre empiece con C que tengan un auto color Azul y sean de la marca NISSAN select * from vehiculo where nompro like 'C%' and color like upper('azul') and modelo like upper('nissan'); -- 4.- Mostrar las papeletas impuestas del Policía con código P001 y del año 2020 select * from papeleta where upper(idpol) like 'P001' and to_char(papfecha,'YYYY')='2020'; --5.- Todas las papeletas impuestas del año 2019 y cuyos meses estén comprendidas entre mayo y octubre select * from papeleta where to_char(papfecha,'YYYY')=2019 and to_char(papfecha,'MM') between 5 and 10; --6.- Mostrar las cantidades de papeletas y el total monto por cada mes, respecto al año 2019 SELECT NROPLA,TO_CHAR(PAPFECHA,'MONTH'),COUNT(*)"CANTIDAD DE PAPELETAS" FROM PAPELETA WHERE TO_CHAR(PAPFECHA,'YYYY')=2019 GROUP BY NROPLA,TO_CHAR(PAPFECHA,'MONTH'); --7.-La cantidad de papeletas impuestas por cada motivo de Infracción select infdes, count(*) "Nro. Papeletas" from papeleta join infraccion using (infcod) group by infdes; --8.- Cantidad de papeletas y el total de papeletas que debe pagar cada propietario select nompro, count(*) "Nro. Papeletas", sum(infimp) from papeleta join infraccion using (infcod) join vehiculo using (nropla) group by nompro; --9.- Repita la pregunta anterior pero mostrando los 5 propietarios con mayor papeleta. select * from (select nompro, count(*) "Nro. Papeletas", sum(infimp) from papeleta join infraccion using (infcod) join vehiculo using (nropla) group by nompro order by 3 desc) where rownum <=5; --11.- cantidad de papeletas impuestas por cada año y el total multa select to_char(papfecha,'yyyy') "año", count(*) "cantidad",sum(infimp) from papeleta join infraccion using(infcod) group by to_char(papfecha,'yyyy'); --12.-La cantidad de papeletas impuestas por cada policía que sean mayores a 5 select nompol, count(*) "Nro. Papeletas" from papeleta join policia using (idpol) group by nompol having count(*)>5 order by nompol; --13.- Crear Una Tabla De Pagos Con Los Campos Nropap, Placa, Propietario create table pagos as select nropap, nropla, nompro from vehiculo join papeleta using (nropla); --14.- a la pregunta anterior agregar un campo descuento y total , estos dos últimos calcularlos , --el descuento se aplica para 2019 es 8% entre el mes de enero y mayo, para junio a setiembre es 9% y para el resto de meses es 10% respecto al importe de multa infimp. alter table pagos add descuento numeric (8,1); alter table pagos add total numeric (8,1); update pagos set descuento = case when papfecha between to_date ('01/01/2019','DD/MM/YYYY') and to_date ('30/05/2019','DD/MM/YYYY') then infraccion.infimp*0.08;