Buen dia, mi problema es que tengo un query que por ejemplo si un usuario tiene de total = 8 le pone 432, son cantidades exageradas, mi query es el siguiente:
Código SQL:
Ver originalSELECT u.nombre_usuario
, SUM(ISNULL(totalEscaneos,0) +
ISNULl(totalEscaneosSalida,0) +
ISNULl(totalEscaneosSinRegistro,0) +
ISNULl(totalEscaneosSinRegistroSalidaRefri,0) +
ISNULl(totalEscaneosSinRegistroFifo,0) +
ISNULl(totalEscaneosSinReposo,0) +
ISNULL(totalEscaneosEntradaFifo,0) +
ISNULL(totalEscaneosSalidaFifo,0)) AS Total
, CONVERT(CHAR(10), fecha , 101) Fecha
FROM tb_usuarios u
LEFT JOIN (
SELECT id_usuario , CONVERT(CHAR(10), tb_escaneos.fecha , 101) AS fecha, SUM( num_escaneos ) AS totalEscaneos
FROM tb_escaneos WHERE CONVERT(CHAR(10), tb_escaneos.fecha , 101) BETWEEN '01/01/2013' AND '06/14/2013' AND fifo IS NULL
GROUP BY id_usuario , CONVERT(CHAR(10), tb_escaneos.fecha , 101)
) e ON u.id_usuario = e.id_usuario
LEFT JOIN (
SELECT id_usuario , CONVERT(CHAR(10), tb_escaneosSalida .fecha , 101) AS fechaSalida, SUM( num_escaneos ) AS totalEscaneosSalida
FROM tb_escaneosSalida WHERE CONVERT(CHAR(10), tb_escaneosSalida .fecha , 101) BETWEEN '01/01/2013' AND '06/14/2013' AND fifo IS NULL
GROUP BY id_usuario , CONVERT(CHAR(10), tb_escaneosSalida .fecha , 101)
) es ON u.id_usuario = es.id_usuario
LEFT JOIN (
SELECT id_usuario , CONVERT(CHAR(10), tb_registros .fecha , 101) AS fechaSinRegistro, SUM( sin_registroTotal ) AS totalEscaneosSinRegistro
FROM tb_registros WHERE CONVERT(CHAR(10), tb_registros .fecha , 101) BETWEEN '01/01/2013' AND '06/14/2013'
GROUP BY id_usuario , CONVERT(CHAR(10), tb_registros .fecha , 101)
) et ON u.id_usuario = et.id_usuario
LEFT JOIN (
SELECT id_usuario , CONVERT(CHAR(10), tb_registros .fecha , 101) AS fechaSinRegistroSalidaRefri, SUM( sin_registroSalidaRefri ) AS totalEscaneosSinRegistroSalidaRefri
FROM tb_registros WHERE CONVERT(CHAR(10), tb_registros .fecha , 101) BETWEEN '01/01/2013' AND '06/14/2013'
GROUP BY id_usuario , CONVERT(CHAR(10), tb_registros .fecha , 101)
) ete ON u.id_usuario = ete.id_usuario
LEFT JOIN (
SELECT id_usuario , CONVERT(CHAR(10), tb_registros .fecha , 101) AS fechaSinRegistroFifo, SUM( sin_registroFifo ) AS totalEscaneosSinRegistroFifo
FROM tb_registros WHERE CONVERT(CHAR(10), tb_registros .fecha , 101) BETWEEN '01/01/2013' AND '06/14/2013'
GROUP BY id_usuario , CONVERT(CHAR(10), tb_registros .fecha , 101)
) ele ON u.id_usuario = ele.id_usuario
LEFT JOIN (
SELECT id_usuario , CONVERT(CHAR(10), tb_registros .fecha , 101) AS fechaSinReposo, SUM( no_cumplioReposo ) AS totalEscaneosSinReposo
FROM tb_registros WHERE CONVERT(CHAR(10), tb_registros .fecha , 101) BETWEEN '01/01/2013' AND '06/14/2013'
GROUP BY id_usuario, CONVERT(CHAR(10), tb_registros .fecha , 101)
) el ON u.id_usuario = el.id_usuario
LEFT JOIN (
SELECT id_usuario , CONVERT(CHAR(10), tb_escaneos .fecha , 101) AS fechaEntradaFifo, SUM( num_escaneos ) AS totalEscaneosEntradaFifo
FROM tb_escaneos WHERE CONVERT(CHAR(10), tb_escaneos.fecha , 101) BETWEEN '01/01/2013' AND '06/14/2013' AND fifo = 1
GROUP BY id_usuario , CONVERT(CHAR(10), tb_escaneos .fecha , 101)
) epe ON u.id_usuario = epe.id_usuario
LEFT JOIN (
SELECT id_usuario , CONVERT(CHAR(10), tb_escaneosSalida .fecha , 101) AS fechaSalidaFifo, SUM( num_escaneos ) AS totalEscaneosSalidaFifo
FROM tb_escaneosSalida WHERE CONVERT(CHAR(10), tb_escaneosSalida .fecha , 101) BETWEEN '01/01/2013' AND '06/14/2013' AND fifo = 1
GROUP BY id_usuario , CONVERT(CHAR(10), tb_escaneosSalida .fecha , 101)
) eper ON u.id_usuario = eper.id_usuario
GROUP BY
u.nombre_usuario
,CONVERT(CHAR(10), fecha , 101)
ORDER BY
u.nombre_usuario
,CONVERT(CHAR(10), fecha , 101)
y el resultado es el siguiente:
Código SQL:
Ver originalADMIN 0 NULL
ADMIN TOTAL 2 05/28/2013
ADMIN TOTAL 2 06/03/2013
Adolfo Martinez Avila 0 NULL
Adrian Martinez 1 NULL
Alejandra Barrera 0 NULL
alfonso samuel 0 NULL
Amairani Cristal 0 NULL
Ana Yanci Morales 0 NULL
Ancelma Hdz 0 NULL
Cesar Araguz 0 NULL
Cricelda Garcia 1 NULL
Crisoforo Santiago 2 NULL
Daniel Diaz Martinez 0 NULL
Deisy cruz 0 NULL
Eliana Beatriz Perez 0 NULL
Fernando David Mendoza 1 NULL
Fernando Jimenez 12 05/29/2013
Fernando Jimenez 3 05/31/2013
Georgina Salazar 0 NULL
Gloria Izaguiire 0 NULL
Irineo Torres 432 NULL
Jaime Ramirez 1 NULL
Jose Luis Regino 0 NULL
Jose Mario Garcia 5 NULL
Juan Carlos Rojas 0 NULL
Julio Cesar Hdz 40 NULL
Julio Cesar martinez 0 NULL
Julio Rivera 0 NULL
Ma del Carmen Morato 0 NULL
Marcelino Diaz 1 NULL
Maribel Lopez 2 NULL
Maribel Santiago 2 NULL
Monica Guerra 0 NULL
Nelson Garcia 1 NULL
Nohemi Ramirez 0 NULL
Odilon Elizalde 0 NULL
Paulina Lorenzo 0 NULL
Porfirio Gregorio Hdz 0 NULL
Rolando maldonado 5 NULL
Rosa Aidee 0 NULL
samuel perez 0 NULL
Samuel Perez 2 05/30/2013
Samuel Perez 2 06/05/2013
Teodora Cerna 0 NULL
Uriel Lopez 0 NULL
Valentin De la Cruz 1 NULL
Veronica Hernandez 16 NULL
Vicente Garcia 0 NULL
Victor del Angel 0 NULL
Yolanda Dolores 0 NULL
Alguien sabe que es lo que tengo mal para que me pueda dar el numero exacto de totales y no me de cantidades exageradas?