4 - Consultas

From Grupo2 Ahand

(Difference between revisions)
Line 8: Line 8:
<table border="1" width="78%" cellspacing="1" id="table1">
<table border="1" width="78%" cellspacing="1" id="table1">
-
<tr>
+
<tr>
-
<td><font face="Courier New" size="2"><b><font color="#FF0000">SELECIONA TODAS AS OCORRÊNCIAS DO MOTORISTA </font></b><br>
+
-
SELECT OM.*, M.NOME, M.ID_MOTORISTA FROM motoristas AS m,
+
-
ocorrencias_motoristas AS om<br>
+
-
WHERE m.id_motorista = om.id_motorista GROUP BY M.ID_MOTORISTA;</font></td>
+
-
</tr>
+
-
<tr>
+
<td><font face="Courier New" size="2">
<td><font face="Courier New" size="2">
<b><font color="#FF0000">-- SELECIONA O NÚMERO DE OCORRÊNCIAS POR MOTORISTA </font></b><br>
<b><font color="#FF0000">-- SELECIONA O NÚMERO DE OCORRÊNCIAS POR MOTORISTA </font></b><br>

Revision as of 16:35, 28 December 2006

Consulta1.JPG Consulta2.JPG Consulta3.JPG Consulta4.JPG Consulta5a.JPG Consulta5b.JPG Consulta5c.JPG

-- SELECIONA O NÚMERO DE OCORRÊNCIAS POR MOTORISTA
SELECT COUNT(OM.ID_OCORRENCIA) AS TOTAL_OCORRENCIAS, M.NOME, M.ID_MOTORISTA FROM motoristas AS m, ocorrencias_motoristas AS om

WHERE m.id_motorista = om.id_motorista GROUP BY M.ID_MOTORISTA;

-- SELECIONA INFORMAÇÕES DO USUÁRIO, QUAL A ROTA QUE O MESMO UTILIZA, SEU PONTO DE INICIO E FIM, COMO TB O BAIRRO E DESCRIÇÃO DA REFERÊNCIA
SELECT U.ID_USUARIO, U.NOME, U.CPF, R.ID_ROTA, R.PONTO_INICIO, R.PONTO_FIM, REF.BAIRRO, REF.DESCRICAO
FROM USUARIOS U, ROTAS R, REL_REFERENCIAS REL_REF, REFERENCIAS REF
WHERE U.ID_PROPRIETARIO = R.ID_PROPRIETARIO
AND R.ID_ROTA = REL_REF.ID_ROTA
AND REL_REF.ID_REFERENCIA = REF.ID_REFERENCIA;

-- APENAS ORDENA PELO NOME DE USUÁRIO A CONSULTA ACIMA

SELECT U.ID_USUARIO, U.NOME, U.CPF, R.ID_ROTA, R.PONTO_INICIO, R.PONTO_FIM, REF.BAIRRO, REF.DESCRICAO
FROM USUARIOS U, ROTAS R, REL_REFERENCIAS REL_REF, REFERENCIAS REF
WHERE U.ID_PROPRIETARIO = R.ID_PROPRIETARIO
AND R.ID_ROTA = REL_REF.ID_ROTA

AND REL_REF.ID_REFERENCIA = REF.ID_REFERENCIA ORDER BY U.NOME;
-- CONTA QUANTOS USUARIOS EXISTE POR ROTA, SEPARANDO OS RESULTADOS POR ROTA DECRESCENTE. ALÉM DISSO INFORMA O ID_ROTA COMO TAMBÉM PONTO DE INÍCIO E FIM

SELECT R.ID_ROTA, R.PONTO_INICIO, R.PONTO_FIM, COUNT(U.ID_USUARIO) TOTAL_USUARIOS
FROM USUARIOS U, ROTAS R, REL_REFERENCIAS REL_REF, REFERENCIAS REF
WHERE U.ID_PROPRIETARIO = R.ID_PROPRIETARIO
AND R.ID_ROTA = REL_REF.ID_ROTA
AND REL_REF.ID_REFERENCIA = REF.ID_REFERENCIA GROUP BY R.ID_ROTA DESC;


-- SELECIONA O NOME DO MOTORISTA, O VEÍCULO QUE DIRIGE, O PROPRIETARIO DESSE VEICULO, A ROTA QUE ESTE MOTORISTA FAZ,PERIODO, REFERENCIAS DESSA ROTA
SELECT M.ID_MOTORISTA, M.NOME, P.NOME AS PROPRIETARIO_VEICULO, V.MARCA, V.ANO, V.MODELO, V.PLACA, V.COR,R.ID_ROTA, R.PONTO_INICIO, R.PONTO_FIM, PE.NOME_PERIODO,REF.BAIRRO, REF.DESCRICAO
FROM MOTORISTAS M, PROPRIETARIOS P, VEICULOS_PROPRIETARIOS VP, VEICULOS V, ROTAS R, PERIODOS PE, REL_REFERENCIAS REL_REF, REFERENCIAS REF
WHERE M.ID_PROPRIETARIO = P.ID_PROPRIETARIO
AND P.ID_PROPRIETARIO = VP.ID_PROPRIETARIO
AND VP.ID_VEICULO = V.ID_VEICULO
AND P.ID_PROPRIETARIO = R.ID_PROPRIETARIO
AND R.ID_ROTA = PE.ID_ROTA
AND R.ID_ROTA = REL_REF.ID_ROTA

AND REL_REF.ID_REFERENCIA = REF.ID_REFERENCIA;
Personal tools