Ver Mensaje Individual
  #12 (permalink)  
Antiguo 07/06/2013, 15:52
Avatar de Libras
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: Resultados de subconsulta

con los valores que pones(obvio sin todas las columnas nada mas usando las columnas llaves que manejas) hice lo siguiente:

Código SQL:
Ver original
  1. CREATE TABLE #generales
  2. (
  3. id INT,
  4. estado VARCHAR(20),
  5. total INT
  6. )
  7.  
  8. CREATE TABLE #partida(
  9. id INT,
  10. folio INT,
  11. depto INT
  12. )
  13.  
  14.  
  15. INSERT INTO #generales VALUES (459,'FIN',1)
  16. INSERT INTO #generales VALUES (460,'FIN',2)
  17. INSERT INTO #generales VALUES (461,'NVA',3)
  18. INSERT INTO #generales VALUES (462,'NVA',4)
  19. INSERT INTO #generales VALUES (463,'NVA',5)
  20. INSERT INTO #generales VALUES (464,'NVA',6)
  21. INSERT INTO #generales VALUES (465,'NVA',7)
  22. INSERT INTO #generales VALUES (466,'NVA',8)
  23. INSERT INTO #generales VALUES (467,'NVA',9)
  24. INSERT INTO #generales VALUES (468,'NVA',10)
  25. INSERT INTO #generales VALUES (469,'NVA',11)
  26. INSERT INTO #generales VALUES (470,'NVA',12)
  27. INSERT INTO #generales VALUES (471,'FIN',13)
  28. INSERT INTO #generales VALUES (472,'NVA',14)
  29. INSERT INTO #generales VALUES (473,'NVA',15)
  30. INSERT INTO #generales VALUES (474,'NVA',16)
  31. INSERT INTO #generales VALUES (475,'NVA',17)
  32. INSERT INTO #generales VALUES (476,'NVA',18)
  33. INSERT INTO #generales VALUES (477,'NVA',19)
  34.  
  35.  
  36.  
  37. INSERT INTO #partida VALUES (576,459,65013)
  38. INSERT INTO #partida VALUES (577,460,65015)
  39. INSERT INTO #partida VALUES (578,460,65015)
  40. INSERT INTO #partida VALUES (579,471,65013)
  41. INSERT INTO #partida VALUES (580,471,65022)
  42. INSERT INTO #partida VALUES (581,474,65022)
  43. INSERT INTO #partida VALUES (582,475,65011)
  44. INSERT INTO #partida VALUES (583,478,65013)
  45. INSERT INTO #partida VALUES (584,478,65015)
  46. INSERT INTO #partida VALUES (586,478,65015)
  47. INSERT INTO #partida VALUES (594,479,65013)
  48. INSERT INTO #partida VALUES (595,479,65013)
  49. INSERT INTO #partida VALUES (596,479,65015)
  50. INSERT INTO #partida VALUES (597,480,65013)
  51. INSERT INTO #partida VALUES (598,481,65013)
  52. INSERT INTO #partida VALUES (599,482,65013)
  53. INSERT INTO #partida VALUES (600,483,65013)
  54. INSERT INTO #partida VALUES (601,484,65013)
  55. INSERT INTO #partida VALUES (602,485,65013)
  56. INSERT INTO #partida VALUES (603,485,65013)
  57. INSERT INTO #partida VALUES (604,485,65015)
  58. INSERT INTO #partida VALUES (605,486,65013)
  59. INSERT INTO #partida VALUES (605,486,65014)
  60. INSERT INTO #partida VALUES (605,486,65014)
  61. INSERT INTO #partida VALUES (606,477,65012)
  62. INSERT INTO #partida VALUES (607,477,65012)
  63.  
  64.  
  65.  
  66. SELECT depto,SUM(g_total) FROM (
  67. SELECT depto,isnull(SUM(total),0) g_total FROM #partida AS t1
  68. LEFT JOIN #generales AS t2 ON (t1.folio=t2.id)
  69. GROUP BY t2.id,folio,depto) AS tabla GROUP BY depto

y obtengo como resultado:

65011 17
65012 38
65013 14
65014 0
65015 4
65022 29

que es lo que buscas no??
__________________
What does an execution plan say to t-sql query? Go f**k yourself, if you are not happy with me