Ver Mensaje Individual
  #5 (permalink)  
Antiguo 29/04/2015, 07:59
Avatar de kurt_fj
kurt_fj
 
Fecha de Ingreso: septiembre-2006
Mensajes: 10
Antigüedad: 17 años, 7 meses
Puntos: 0
Respuesta: Construcción de relaciones y consultas (Mysql)

Saludos.

Leyendo un poco más sobre bases de datos me he encontrado con que el esquema de mi db es uno llamado copo de nieve (al menos es lo que entiendo).

He armado una consulta para probar cómo se muestran los datos. Por ahora uso
Código:
left join
pues hay un acta que no esta asociada a todas las tablas N:M pero planeo usar
Código:
inner join
este es el código:

Código MySQL:
Ver original
  1. a.actas_id 'N Acta',
  2. date_format(a.fecha, '%d/%m/%Y') 'Fecha Acta',
  3. -- Origen
  4. concat_ws(' ',co.compania,'Compañía','(',pu.puesto,')') 'Origen',
  5. -- Ente Receptor
  6. er.ente 'Ente Receptor',
  7. -- Funcionario(s)
  8. concat_ws(' ',ra.siglas,fu.p_apellido,fu.p_nombre) 'Funcionario(s)',
  9. -- Fiscal
  10. concat_ws(' ',fi.fis_cedula,fi.p_apellido,fi.p_nombre) 'Fiscal',
  11. -- Imputado(s)
  12. concat_ws(' ',im.imp_cedula,im.p_apellido,im.p_nombre) 'Imputado(s)',
  13. retencion 'Retencion(es)',
  14. -- usuario
  15. concat_ws(' ',us.apellido,us.nombre) 'Creado por:'
  16. from actas a
  17. -- Funcionario(s)
  18. left join actas_has_funcionarios ahf on ahf.fk_actas_id = a.actas_id
  19. left join funcionarios fu on fu.fun_cedula = ahf.fk_funcionarios_cedula
  20. left join rangos ra on ra.rangos_id = fu.fk_rangos_id
  21. -- Imputados(s)
  22. left join actas_has_imputados ahi on ahi.fk_actas_id = a.actas_id
  23. left join imputados im on im.imp_cedula = ahi.fk_imputados_cedula
  24. -- Retencion(es)
  25. left join actas_has_retenciones ahr on ahr.fk_actas_id = a.actas_id
  26. left join retenciones re on re.retenciones_id = ahr.fk_retenciones_id
  27. -- Fiscal
  28. left join fiscales fi on fi.fis_cedula = a.fk_fiscales_cedula
  29. -- Ente Receptor
  30. left join entes_receptores er on er.ente_id = a.fk_entes_receptores_id
  31. -- Origen
  32. left join puestos pu on pu.puestos_id = a.fk_puestos_id
  33. left join companias co on co.companias_id = pu.fk_companias_id
  34. -- Usuario
  35. left join usuarios us on us.usuario_id = a.fk_usuarios_id;

Esta consulta me devuelve:

Código MySQL:
Ver original
  1. +-----------+------------+------------------------------------+---------------+---------------------+--------------------+-------------------------+-----------------------+------------------+
  2. | N Acta    | Fecha Acta | Origen                             | Ente Receptor | Funcionario(s)      | Fiscal             | Imputado(s)             | Retencion(es)         | Creado por:      |
  3. +-----------+------------+------------------------------------+---------------+---------------------+--------------------+-------------------------+-----------------------+------------------+
  4. | 1b99089c4 | 13/04/2015 | Primera Compañía ( Peaje I )       | Fiscalía 1º   | TCNEL García Dilia  | 2468135 Cate Ali   | 12345678 Carmona Carlos | Persona               | González Freddy  |
  5. | 1b99089c4 | 13/04/2015 | Primera Compañía ( Peaje I )       | Fiscalía 1º   | TCNEL García Dilia  | 2468135 Cate Ali   | 12345678 Carmona Carlos | Arma de Fuego         | González Freddy  |
  6. | 1b99089c4 | 13/04/2015 | Primera Compañía ( Peaje I )       | Fiscalía 1º   | TCNEL García Dilia  | 2468135 Cate Ali   | 12345678 Carmona Carlos | Productos Varios      | González Freddy  |
  7. | 1b99089c5 | 14/04/2015 | Primera Compañía ( Petroguárico )  | Fiscalía 2º   | TTE Rambo Jhon      | 9876543 Brito Alan | 11223344 Pérez Pedro    | Auto                  | González Freddy  |
  8. | 1b99089c5 | 14/04/2015 | Primera Compañía ( Petroguárico )  | Fiscalía 2º   | TTE Rambo Jhon      | 9876543 Brito Alan | 11223344 Pérez Pedro    | Equipos               | González Freddy  |
  9. | 1b99089c5 | 14/04/2015 | Primera Compañía ( Petroguárico )  | Fiscalía 2º   | TTE Rambo Jhon      | 9876543 Brito Alan | 11223344 Pérez Pedro    | Sustancias            | González Freddy  |
  10. | 1b99089c5 | 14/04/2015 | Primera Compañía ( Petroguárico )  | Fiscalía 2º   | TTE Rambo Jhon      | 9876543 Brito Alan | 11223344 Pérez Pedro    | Herramientas o Partes | González Freddy  |
  11. | 1b99089c5 | 14/04/2015 | Primera Compañía ( Petroguárico )  | Fiscalía 2º   | TTE Rambo Jhon      | 9876543 Brito Alan | 12345678 Carmona Carlos | Auto                  | González Freddy  |
  12. | 1b99089c5 | 14/04/2015 | Primera Compañía ( Petroguárico )  | Fiscalía 2º   | TTE Rambo Jhon      | 9876543 Brito Alan | 12345678 Carmona Carlos | Equipos               | González Freddy  |
  13. | 1b99089c5 | 14/04/2015 | Primera Compañía ( Petroguárico )  | Fiscalía 2º   | TTE Rambo Jhon      | 9876543 Brito Alan | 12345678 Carmona Carlos | Sustancias            | González Freddy  |
  14. | 1b99089c5 | 14/04/2015 | Primera Compañía ( Petroguárico )  | Fiscalía 2º   | TTE Rambo Jhon      | 9876543 Brito Alan | 12345678 Carmona Carlos | Herramientas o Partes | González Freddy  |
  15. | 1b99089c5 | 14/04/2015 | Primera Compañía ( Petroguárico )  | Fiscalía 2º   | TCNEL García Dilia  | 9876543 Brito Alan | 11223344 Pérez Pedro    | Auto                  | González Freddy  |
  16. | 1b99089c5 | 14/04/2015 | Primera Compañía ( Petroguárico )  | Fiscalía 2º   | TCNEL García Dilia  | 9876543 Brito Alan | 11223344 Pérez Pedro    | Equipos               | González Freddy  |
  17. | 1b99089c5 | 14/04/2015 | Primera Compañía ( Petroguárico )  | Fiscalía 2º   | TCNEL García Dilia  | 9876543 Brito Alan | 11223344 Pérez Pedro    | Sustancias            | González Freddy  |
  18. | 1b99089c5 | 14/04/2015 | Primera Compañía ( Petroguárico )  | Fiscalía 2º   | TCNEL García Dilia  | 9876543 Brito Alan | 11223344 Pérez Pedro    | Herramientas o Partes | González Freddy  |
  19. | 1b99089c5 | 14/04/2015 | Primera Compañía ( Petroguárico )  | Fiscalía 2º   | TCNEL García Dilia  | 9876543 Brito Alan | 12345678 Carmona Carlos | Auto                  | González Freddy  |
  20. | 1b99089c5 | 14/04/2015 | Primera Compañía ( Petroguárico )  | Fiscalía 2º   | TCNEL García Dilia  | 9876543 Brito Alan | 12345678 Carmona Carlos | Equipos               | González Freddy  |
  21. | 1b99089c5 | 14/04/2015 | Primera Compañía ( Petroguárico )  | Fiscalía 2º   | TCNEL García Dilia  | 9876543 Brito Alan | 12345678 Carmona Carlos | Sustancias            | González Freddy  |
  22. | 1b99089c5 | 14/04/2015 | Primera Compañía ( Petroguárico )  | Fiscalía 2º   | TCNEL García Dilia  | 9876543 Brito Alan | 12345678 Carmona Carlos | Herramientas o Partes | González Freddy  |
  23. | 1b99089c5 | 14/04/2015 | Primera Compañía ( Petroguárico )  | Fiscalía 2º   | SM/2 Mora Manuel    | 9876543 Brito Alan | 11223344 Pérez Pedro    | Auto                  | González Freddy  |
  24. | 1b99089c5 | 14/04/2015 | Primera Compañía ( Petroguárico )  | Fiscalía 2º   | SM/2 Mora Manuel    | 9876543 Brito Alan | 11223344 Pérez Pedro    | Equipos               | González Freddy  |
  25. | 1b99089c5 | 14/04/2015 | Primera Compañía ( Petroguárico )  | Fiscalía 2º   | SM/2 Mora Manuel    | 9876543 Brito Alan | 11223344 Pérez Pedro    | Sustancias            | González Freddy  |
  26. | 1b99089c5 | 14/04/2015 | Primera Compañía ( Petroguárico )  | Fiscalía 2º   | SM/2 Mora Manuel    | 9876543 Brito Alan | 11223344 Pérez Pedro    | Herramientas o Partes | González Freddy  |
  27. | 1b99089c5 | 14/04/2015 | Primera Compañía ( Petroguárico )  | Fiscalía 2º   | SM/2 Mora Manuel    | 9876543 Brito Alan | 12345678 Carmona Carlos | Auto                  | González Freddy  |
  28. | 1b99089c5 | 14/04/2015 | Primera Compañía ( Petroguárico )  | Fiscalía 2º   | SM/2 Mora Manuel    | 9876543 Brito Alan | 12345678 Carmona Carlos | Equipos               | González Freddy  |
  29. | 1b99089c5 | 14/04/2015 | Primera Compañía ( Petroguárico )  | Fiscalía 2º   | SM/2 Mora Manuel    | 9876543 Brito Alan | 12345678 Carmona Carlos | Sustancias            | González Freddy  |
  30. | 1b99089c5 | 14/04/2015 | Primera Compañía ( Petroguárico )  | Fiscalía 2º   | SM/2 Mora Manuel    | 9876543 Brito Alan | 12345678 Carmona Carlos | Herramientas o Partes | González Freddy  |
  31. | 1b99089c6 | 14/04/2015 | Primera Compañía ( Chaguaramas )   | Fiscalía 2º   |                     | 9876543 Brito Alan |                         | NULL                  | González Freddy  |
  32. +-----------+------------+------------------------------------+---------------+---------------------+--------------------+-------------------------+-----------------------+------------------+
Con eso recupero todos los datos de las actas, pero, ¿es factible cuando sean más las actas? ¿No penalizará el rendimiento? la mayor cantidad que se piensa mostrar el actas por año.