Está en la página 1de 11

1

PROYECTO (FASE 1) SOBRE UNA SITUACIÓN REAL DE MANIPULACIÓN DE


BASES DE DATOS

DEIBY ALEJANDRO ROMÀN GALLEGO


JEISON ANDRES VIDAL DURANGO
JUAN DAVID QUINTERO GAVIRIA

INSTITUCIÓN UNIVERSITARIA PASCUAL BRAVO


FACULTAD DE INGENIERIA
TECNOLOGÍA EN DESARROLLO DE SOFTWARE
MEDELLÍN
2020
2

Link del video explicativo:

Link de descarga del script:

Profesor en el link de descarga del script se dejan dos archivos unos con la base de datos y otro
para rellenarla a si que se recomienda primero ejecutar el que se llama esquema de
parqueadero y luego data parqueadero
3

Tabla de

Contenido
Tabla de.......................................................................................................................................3

PLANIFICACIÓN PRELIMINAR............................................................................................4

DESCRIPCIÓN DEL PROBLEMA.................................................................................................4

DEFINICIÓN DE REQUISITOS...............................................................................................4

DISEÑO EN MODELO ENTIDAD RELACIÓN..............................................................................5

MODELO RELACIONAL.............................................................................................................6

IMPLEMENTACIÓN DEL MODELO RELACIONAL EN EL DBGS..................................................7

Consultas pedidas en la TIA.....................................................................................................8


4

PLANIFICACIÓN PRELIMINAR.

DESCRIPCIÓN DEL PROBLEMA


Es un sistema de gestión de entrada y salida de vehículos, que permite facturar la entrada y salida
de todo tipo de vehículos.
Es un sistema eficiente que permite la facturación de la permanencia de vehículos de toda clase,
con tarifas por vehículos, facturación de servicios adicionales como lavado, cambio de aceite Y
encerado, el cual contara con facturación física o electrónica de acuerdo a las necesidades del
cliente.
El parqueadero cuenta con 2 niveles y cada uno tiene 30.

DEFINICIÓN DE REQUISITOS.

El servicio esta asociado a una tarifa por horas dependiendo del vehículo (carro o moto).
con la información que se tiene en la base de datos se podrá saber cuántas celdas están ocupadas
o desocupas para informar a los clientes donde parquear.
el sistema nos dirá con exactitud en que ubicación este cada vehículo.
se llevará el control de los turnos de cada empleado, tiendo conocimiento de que turno está
laborando.
Con la información se podrá informa al cliente si su vehículo esta en proceso de alguno de los
servicio.
El taquillero podrá validar en el sistema toda la información del vehículo, costo, tiempo de
estacionamiento con tan solo ingresar la placa del vehículo.

DISEÑO EN MODELO ENTIDAD RELACIÓN.


5

MODELO RELACIONAL
6

IMPLEMENTACIÓN DEL MODELO RELACIONAL EN EL DBGS


7
8

CONSULTAS PEDIDAS EN LA TIA

/* Una con group by y having en una sola tabla. */

/*Esta consulta lista las veces que un vehiculo usa el servicio 1, y de todos esos servicios
se filtra con el having la cedula del empleado que presto el servicio */

SELECT COUNT(placa)AS Servicios, placa


FROM tblServicioS WHERE idtipoServicio=1
GROUP BY placa
HAVING avg(cedulaEmpleado) = 105

/Una con group by y having con dos o más tablas./


9

/*Esta consulta lista las veces que un vehiculo usa el servicio 1, se hace un Inner Join para
validar el valor del servicio */

SELECT COUNT(placa) AS Servicios, placa AS Placa, tblTipoServicio.valor AS


ValorServicio
FROM tblServicioS INNER JOIN tblTipoServicio ON tblServicios.idtipoServicio =
tblTipoServicio.idTipoServicio
WHERE tblServicios.idtipoServicio=1
GROUP BY placa, tblTipoServicio.valor
HAVING SUM(tblTipoServicio.valor) > 0

/Una subconsulta de una sola tabla/

/*Esta subconsulta busca el idTipoServicio en la tabla tblTipoServicio y lista los resultados */


SELECT * FROM tblServicios
WHERE idtipoServicio IN(
SELECT
idtipoServicio
FROM
tblTipoServicio
WHERE
idtipoServicio= 3
)

/Una subconsulta de tres niveles/

SELECT * FROM tblServicios


WHERE idtipoServicio IN(
10

SELECT
idtipoServicio
FROM
tblTipoServicio
WHERE
valor IN(
SELECT valor
FROM tblTipoServicio
WHERE valor > 3000)
)

/Una diferencia e intersección con not in y otra con in./


SELECT * FROM tblServicios WHERE idtipoServicio NOT IN (2,3)

SELECT * FROM tblServicios WHERE idtipoServicio IN (2,3)

/Una diferencia e intersección con not exists y otra con exists./


SELECT placa, marca, modelo
FROM tblVehiculo AS a
WHERE EXISTS
(SELECT *
FROM tblConductor AS b
WHERE a.cedulaConductor = b.cedula
AND b.nombre = 'Alejandro') ;

SELECT placa, marca, modelo


FROM tblVehiculo AS a
11

WHERE NOT EXISTS


(SELECT *
FROM tblConductor AS b
WHERE a.cedulaConductor = b.cedula
AND b.cedula = 105) ;

/Una con más de dos tablas y con un cálculo aritmético en el select/

SELECT SUM(tblTipoServicio.valor) AS INGRESO, AVG(tblEgreso.valor) AS EGRESO,


(SUM(tblTipoServicio.valor) - AVG(tblEgreso.valor)) AS TOTAL
FROM tblIngresos
INNER JOIN tblFactura ON tblFactura.idFactura = tblIngresos.idFactura
INNER JOIN tblServicios ON tblServicios.idServicio = tblFactura.idServicio
INNER JOIN tblTipoServicio ON tblTipoServicio.idTipoServicio =
tblServicios.idtipoServicio
INNER JOIN tblEgreso ON tblFactura.fechaFactura = tblEgreso.fecha
WHERE tblFactura.fechaFactura = '2020-09-05'

También podría gustarte