Foros del Web » Programación para mayores de 30 ;) » Bases de Datos General » Mysql »

[SOLUCIONADO] Reporte formato excel

Estas en el tema de Reporte formato excel en el foro de Mysql en Foros del Web. Hola a todos como estan no se si alguno por aqui ha tenido el mismo caso que yo veran tengo una consulta que me genera ...
  #1 (permalink)  
Antiguo 07/03/2016, 17:04
 
Fecha de Ingreso: abril-2015
Mensajes: 304
Antigüedad: 9 años, 1 mes
Puntos: 2
Reporte formato excel

Hola a todos como estan no se si alguno por aqui ha tenido el mismo caso que yo veran tengo una consulta que me genera algo asi
Código EXCEL:
Ver original
  1. Responsable Comercial   Programa    Inscritos   Pediente de Pago    Muy Interesado | Interesado
  2. Ursula Chavez        CEX                  1            0                  1    1
  3. Hilda Tello              CEX                  1           0                       2    1
  4. Ursula Chavez        CIC                 4                   0                      0   1
  5. Hilda Tello              CIC                 0                  0                                    0  0
  6. Ursula Chavez                    CIC-N       0                  0                                     0 2
  7. Hilda Tello                          CIC-N       1                  0                                    0  1
  8. Ursula Chavez                    CTAC         1          0                                  1   0
  9. Hilda Tello                          CTAC          0             0                                   0  0
  10. Ursula Chavez                    CTC               3                     0                                  2   1
  11. Hilda Tello                          CTC                  0          0                                 0    0
  12. Ursula Chavez                     PCJ   0   0   0   1
  13. Hilda Tello PCJ 0   0   0   0
  14. Ursula Chavez   PCV 0   0   1   1
  15. Hilda Tello PCV 0   0   0   0
lo que deseo es que me de un formato algo asi
Código EXCEL:
Ver original
  1. Responsable Comercial   Programa    Inscritos   Pediente de Pago    Muy Interesado  Interesado
  2. Ursula Chavez   CEX 1   0   1   1
  3. Hilda Tello CEX 1   0   2   1
  4. Total   CEX 2   0   3   2
  5. Ursula Chavez   CIC 4   0   0   1
  6. Hilda Tello CIC 0   0   0   0
  7. Total   CIC 4   0   0   1
  8. Ursula Chavez   CIC-N   0   0   0   2
  9. Hilda Tello CIC-N   1   0   0   1
  10. Total   CIC-N   1   0   0   3
  11. Ursula Chavez   CTAC    1   0   1   0
  12. Hilda Tello CTAC    0   0   0   0
  13. Total   CTAC    1   0   1   0
  14. Ursula Chavez   CTC 3   0   2   1
  15. Hilda Tello CTC 0   0   0   0
  16. Total   CTC 3   0   2   1
  17. Ursula Chavez   PCJ 0   0   0   1
  18. Hilda Tello PCJ 0   0   0   0
  19. Total   PCJ 0   0   0   1
  20. Ursula Chavez   PCV 0   0   1   1
  21. Hilda Tello PCV 0   0   0   0
  22. Total   PCV 0   0   1   1
pues para ello tengo mi consulta que algo asi
Código MySQL:
Ver original
  1. SELECT * FROM (SELECT Responsable, Descripcion,
  2. (SELECT COUNT(1) FROM seg_pap sgpc, seg_pap_servicio spg
  3. WHERE sgpc.seg_estatus_id IN(8) AND spg.jc_servicio_id = dato.jc_servicio_id
  4. AND spg.seg_pap_id = sgpc.seg_pap_id AND sgpc.jc_usuario_id= dato.jc_usuario_id)Inscritos,
  5. (SELECT COUNT(1) FROM seg_pap sgpc, seg_pap_servicio spg
  6. WHERE sgpc.seg_estatus_id IN(9) AND spg.jc_servicio_id = dato.jc_servicio_id
  7. AND spg.seg_pap_id = sgpc.seg_pap_id AND sgpc.jc_usuario_id= dato.jc_usuario_id)Pendiente_Pago,
  8. (SELECT COUNT(1) FROM seg_pap sgpc, seg_pap_servicio spg
  9. WHERE sgpc.seg_estatus_id IN(10) AND spg.jc_servicio_id = dato.jc_servicio_id
  10. AND spg.seg_pap_id = sgpc.seg_pap_id AND sgpc.jc_usuario_id= dato.jc_usuario_id)Muy_Interesado,
  11. (SELECT COUNT(1) FROM seg_pap sgpc, seg_pap_servicio spg
  12. WHERE sgpc.seg_estatus_id IN(11) AND spg.jc_servicio_id = dato.jc_servicio_id
  13. AND spg.seg_pap_id = sgpc.seg_pap_id AND sgpc.jc_usuario_id= dato.jc_usuario_id)Interesado,
  14. (SELECT COUNT(spg.jc_servicio_id) FROM seg_pap sgpc, seg_pap_servicio spg
  15. WHERE sgpc.seg_estatus_id IN(8,9,10,11) AND spg.jc_servicio_id = dato.jc_servicio_id
  16. AND spg.seg_pap_id = sgpc.seg_pap_id)Total
  17. FROM(SELECT CONCAT(jc_usuario_nombre,' ',jc_usuario_apellidos) AS Responsable,sp.jc_servicio_descripcion AS Descripcion,
  18. sps.jc_servicio_id,sgp.jc_usuario_id FROM seg_pap sgp
  19. INNER JOIN usuarios_crm us ON sgp.jc_usuario_id = us.jc_usuario_id
  20. JOIN(seg_pap_servicio sps INNER JOIN servicio sp ON sp.jc_servicio_id = sps.jc_servicio_id)
  21. GROUP BY sp.jc_servicio_descripcion, sgp.jc_usuario_id) dato)GLOBAL
lo que no se es como generar esa fila de total ayudaaa por favorrrr

Última edición por BlackJccl1; 07/03/2016 a las 17:12
  #2 (permalink)  
Antiguo 07/03/2016, 17:16
Avatar de Libras
Colaborador
 
Fecha de Ingreso: agosto-2006
Ubicación: En la hermosa perla de occidente
Mensajes: 7.412
Antigüedad: 17 años, 8 meses
Puntos: 774
Respuesta: Reporte formato excel

prueba con la funcion TRIM
__________________
What does an execution plan say to t-sql query? Go f**k yourself, if you are not happy with me
  #3 (permalink)  
Antiguo 07/03/2016, 17:18
 
Fecha de Ingreso: abril-2015
Mensajes: 304
Antigüedad: 9 años, 1 mes
Puntos: 2
Respuesta: Reporte formato excel

A que te refieres el cliente que uso para conectarme a la BD es HeidiSQL y pues mi BD es MySql
  #4 (permalink)  
Antiguo 07/03/2016, 17:35
Avatar de Libras
Colaborador
 
Fecha de Ingreso: agosto-2006
Ubicación: En la hermosa perla de occidente
Mensajes: 7.412
Antigüedad: 17 años, 8 meses
Puntos: 774
Respuesta: Reporte formato excel

https://www.google.com/url?sa=t&rct=...,d.cWw&cad=rja

Y ahi revisate para que es la funcion TRIM
__________________
What does an execution plan say to t-sql query? Go f**k yourself, if you are not happy with me
  #5 (permalink)  
Antiguo 07/03/2016, 17:38
 
Fecha de Ingreso: abril-2015
Mensajes: 304
Antigüedad: 9 años, 1 mes
Puntos: 2
Respuesta: Reporte formato excel

Lo revise pero no se si ayuda con mi problema lo que eseo es agregar una fila donde sume los totales por porgrama de cada cabecera gracias por el tiempo los espacios que ves aqui es porque este editor del post
  #6 (permalink)  
Antiguo 08/03/2016, 17:01
 
Fecha de Ingreso: abril-2015
Mensajes: 304
Antigüedad: 9 años, 1 mes
Puntos: 2
Respuesta: Reporte formato excel

Al final lo solucione con una consulta asi
Código MySQL:
Ver original
  1. *
  2. FROM    (
  3.             SELECT    Responsable,
  4.                     Descripcion,
  5.                     (    SELECT    COUNT(1)
  6.                         FROM    seg_pap sgpc, seg_pap_servicio spg
  7.                         WHERE    sgpc.seg_estatus_id IN(8)
  8.                         AND        spg.jc_servicio_id    =    dato.jc_servicio_id
  9.                         AND        spg.seg_pap_id        =    sgpc.seg_pap_id
  10.                         AND        sgpc.jc_usuario_id    =    dato.jc_usuario_id
  11.                     )    Inscritos,
  12.                     (    SELECT    COUNT(1)
  13.                         FROM    seg_pap sgpc, seg_pap_servicio spg
  14.                         WHERE    sgpc.seg_estatus_id IN(9)
  15.                         AND        spg.jc_servicio_id    =    dato.jc_servicio_id
  16.                         AND        spg.seg_pap_id        =    sgpc.seg_pap_id
  17.                         AND        sgpc.jc_usuario_id    =    dato.jc_usuario_id
  18.                     )    Pendiente_Pago,
  19.                     (    SELECT    COUNT(1)
  20.                         FROM    seg_pap sgpc, seg_pap_servicio spg
  21.                         WHERE    sgpc.seg_estatus_id IN(10)
  22.                         AND        spg.jc_servicio_id    =    dato.jc_servicio_id
  23.                         AND        spg.seg_pap_id        =    sgpc.seg_pap_id
  24.                         AND        sgpc.jc_usuario_id    =    dato.jc_usuario_id
  25.                     )    Muy_Interesado,
  26.                     (    SELECT    COUNT(1)
  27.                         FROM    seg_pap sgpc, seg_pap_servicio spg
  28.                         WHERE    sgpc.seg_estatus_id IN    (11)
  29.                         AND        spg.jc_servicio_id    =    dato.jc_servicio_id
  30.                         AND        spg.seg_pap_id        =    sgpc.seg_pap_id
  31.                         AND        sgpc.jc_usuario_id    =    dato.jc_usuario_id)Interesado,
  32.                     (    SELECT    COUNT(spg.jc_servicio_id)
  33.                         FROM    seg_pap sgpc, seg_pap_servicio spg
  34.                         WHERE    sgpc.seg_estatus_id    IN(8,9,10,11)
  35.                         AND        spg.jc_servicio_id    =    dato.jc_servicio_id
  36.                         AND        spg.seg_pap_id = sgpc.seg_pap_id
  37.                     )    Total,
  38.                     1    as orden
  39.  
  40.             FROM    (    
  41.                         SELECT        CONCAT(jc_usuario_nombre,' ',jc_usuario_apellidos)    AS Responsable,
  42.                                     sp.jc_servicio_descripcion                            AS Descripcion,
  43.                                     sps.jc_servicio_id,sgp.jc_usuario_id
  44.                         FROM        seg_pap sgp
  45.                         INNER JOIN    usuarios_crm us ON sgp.jc_usuario_id = us.jc_usuario_id
  46.                         JOIN        (
  47.                                         seg_pap_servicio sps
  48.                                         INNER JOIN    servicio sp ON sp.jc_servicio_id = sps.jc_servicio_id
  49.                                     )
  50.                         GROUP BY sp.jc_servicio_descripcion, sgp.jc_usuario_id
  51.                     ) dato
  52.  
  53.             UNION ALL
  54.            
  55.             SELECT    'Total'        as Responsable,
  56.                     Descripcion,
  57.                     (    SELECT    COUNT(1)
  58.                         FROM    seg_pap sgpc, seg_pap_servicio spg
  59.                         WHERE    sgpc.seg_estatus_id IN(8)
  60.                         AND        spg.jc_servicio_id    =    dato.jc_servicio_id
  61.                         AND        spg.seg_pap_id        =    sgpc.seg_pap_id
  62.                     )    Inscritos,
  63.                     (    SELECT    COUNT(1)
  64.                         FROM    seg_pap sgpc, seg_pap_servicio spg
  65.                         WHERE    sgpc.seg_estatus_id IN(9)
  66.                         AND        spg.jc_servicio_id    =    dato.jc_servicio_id
  67.                         AND        spg.seg_pap_id        =    sgpc.seg_pap_id
  68.                     )    Pendiente_Pago,
  69.                     (    SELECT    COUNT(1)
  70.                         FROM    seg_pap sgpc, seg_pap_servicio spg
  71.                         WHERE    sgpc.seg_estatus_id IN(10)
  72.                         AND        spg.jc_servicio_id    =    dato.jc_servicio_id
  73.                         AND        spg.seg_pap_id        =    sgpc.seg_pap_id
  74.                     )    Muy_Interesado,
  75.                     (    SELECT    COUNT(1)
  76.                         FROM    seg_pap sgpc, seg_pap_servicio spg
  77.                         WHERE    sgpc.seg_estatus_id IN    (11)
  78.                         AND        spg.jc_servicio_id    =    dato.jc_servicio_id
  79.                         AND        spg.seg_pap_id        =    sgpc.seg_pap_id
  80.                     )    Interesado,
  81.                     (    SELECT    COUNT(spg.jc_servicio_id)
  82.                         FROM    seg_pap sgpc, seg_pap_servicio spg
  83.                         WHERE    sgpc.seg_estatus_id    IN(8,9,10,11)
  84.                         AND        spg.jc_servicio_id    =    dato.jc_servicio_id
  85.                         AND        spg.seg_pap_id = sgpc.seg_pap_id
  86.                     )    Total,
  87.                     2    as orden
  88.             FROM    (    
  89.                         SELECT        sp.jc_servicio_descripcion                AS Descripcion,
  90.                                     sps.jc_servicio_id,sgp.jc_usuario_id
  91.                         FROM        seg_pap sgp
  92.                         INNER JOIN    usuarios_crm us ON sgp.jc_usuario_id = us.jc_usuario_id
  93.                         JOIN        (
  94.                                         seg_pap_servicio sps
  95.                                         INNER JOIN    servicio sp ON sp.jc_servicio_id = sps.jc_servicio_id
  96.                                     )
  97.                         GROUP BY sp.jc_servicio_descripcion
  98.                     ) dato
  99.  
  100.         ) GLOBAl
  101. order by GLOBAl.Descripcion asc, GLOBAl.orden asc

Gracias por todo

Etiquetas: excel, formato, join, reporte, select
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 12:14.