Control SQL: Modelo Relacional: Comisaria
Apellidos y Nombres:
Realizar las siguientes consultas:
1. Nombres de los policías que han investigado algún caso en el que esté involucrado el delincuente “El mono” y que
hayan sido tratado en el juzgado “Municipal”
SELECT [Link]
FROM policia p INNER JOIN caso c ON p.id_policia = c.id_policia INNER JOIN delincuente d on d.id_delincuente =
c.id_delincuente
WHERE [Link] = "El Mono" and juzgado = "Municipal"
2. Todos los datos de los policías que en su nombre hay al menos una letra “a” y que utilizan el arma con código “1234”
y es de tipo “Fusil de asalto”
SELECT *
FROM policia p INNER JOIN policia_arma pa ON p.id_policia = pa.id_policia INNER JOIN arma a ON a.codigo_arma =
pa.codigo_arma
WHERE [Link] like "%a%" and a.codigo_arma = "1234" and [Link] = “Fusil de asalto”
3. Códigos de las armas que utilizan los policías que detuvieron a los delincuentes que están en la celda con código
“13”.
SELECT código_arma
FROM policia-arma pa INNER JOIN policia p ON p.id_policia = pa.id_policia INNER JOIN caso c on p.id_policia =
c.id_policia INNER JOIN delincuente d on d.id_delincuente = c.id_delincuente
WHERE id_celda = "13"
4. Número de casos que tuvo cada policía donde estuvieron involucrados delincuentes mayores a 30 años. Debe
colocar el nombre del policía.
SELECT [Link], COUNT(*)
FROM policia p INNER JOIN caso c on p.id_policia = c.id_policia INNER JOIN delincuente d on d.id_delincuente =
c.id_delincuente
WHERE [Link]>30
GROUP BY [Link]
5. Promedio de edad de los delincuentes cuyos casos han sido vistos por el Juzgado “Mayor”.
SELECT AVG([Link])
FROM caso c INNER JOIN delincuente d on d.id_delincuente = c.id_delincuente
WHERE [Link] = "Mayor"
6. Nombre lo los delincuentes, delito cometido y policía que investigó el caso de los delincuentes que su nombre acaba
en “o” y que el policía tiene un salario entre 2000 y 2500 soles. Debe ordenar por nombre de delincuente.
SELECT [Link], [Link], [Link]
FROM policia p INNER JOIN caso c on p.id_policia = c.id_policia INNER JOIN delincuente d on d.id_delincuente =
c.id_delincuente
WHERE [Link] like "%o" and [Link] BETWEEN 2000 and 2500
ORDER BY [Link]
7. Promedio, máximo y mínimo salario de los policías que atraparon a los delincuentes del pabellón “R-15”
SELECT AVG(salario), MAX(salario), MIN(salario)
FROM policia p INNER JOIN caso ca on p.id_policia = ca.id_policia INNER JOIN delincuente d on d.id_delincuente =
ca.id_delincuente INNER JOIN celda ce ON ce.id_celda = d.id_celda
WHERE [Link] = "R-15"
8. ¿Cuántos delincuentes que cometieron robo hay en el pabellón “R2D2”?
SELECT COUNT(*)
FROM caso ca INNER JOIN delincuente d on d.id_delincuente = ca.id_delincuente INNER JOIN celda ce ON ce.id_celda =
d.id_celda
WHERE [Link] = "R2D2" and [Link] = “robo”
9. Nombre de todos los policías que han usado más de 3 armas del tipo “Fusil de asalto”
SELECT [Link], COUNT(*)
FROM policia p INNER JOIN policia-arma pa ON p.id_policia = pa.id_policia INNER JOIN arma a ON a.codigo_arma =
pa.codigo_arma
WHERE [Link] = “Fusil de asalto”
GROUP BY [Link]
HAVING COUNT(*) > 3
10. Nombre de los policías que hayan tenido más de 20 de casos sobre el delito de narcotráfico.
SELECT [Link], COUNT(*)
FROM policia p INNER JOIN caso c on p.id_policia = c.id_policia
WHERE [Link] = "narcotráfico"
GROUP BY [Link]
HAVING COUNT(*) > 20