Guest User

Untitled

a guest
May 31st, 2012
32
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.86 KB | None | 0 0
  1. Items getting double-counted in SQL Server, dependent counting logic not working right
  2. SELECT t.Submitting_Agency, COUNT(DISTINCT t.Count) AS RFICount
  3. FROM (
  4. SELECT RFI_.Submitting_Agency, RFI_.Unique_ID, _LinkEnd.EntityType_ID1, _LinkEnd.Link_ID as Count
  5. FROM RFI_
  6. JOIN _LinkEnd ON RFI_.Unique_ID=_LinkEnd.Entity_ID1
  7. WHERE _LinkEnd.Link_ID LIKE 'CAS%' AND RFI_.Date_Submitted BETWEEN '20110430' AND '20110630'
  8. UNION ALL
  9. SELECT RFI_.Task_Force__Initiative AS Submitting_Agency, RFI_.Unique_ID, _LinkEnd.EntityType_ID1, _LinkEnd.Link_ID as Count
  10. FROM RFI_
  11. JOIN _LinkEnd ON RFI_.Unique_ID=_LinkEnd.Entity_ID1
  12. WHERE _LinkEnd.Link_ID LIKE 'CAS%' AND RFI_.Date_Submitted BETWEEN '20110430' AND '20110630' AND RFI_.Task_Force__Initiative IS NOT NULL) t
  13. GROUP BY t.Submitting_Agency
  14.  
  15. ---------------------------------------------------------------------------
  16. | Unique_ID | Submitting_Agency | Task_Force__Initiative | Date_Submitted |
  17. ---------------------------------------------------------------------------
  18. | 1 | Social Service | Flood Relief TF | 2011-05-08 |
  19. ---------------------------------------------------------------------------
  20. | 2 | Faith-Based Init. | Homeless Shelter Min. | 2011-06-08 |
  21. ---------------------------------------------------------------------------
  22. | 3 | Psychology Group | | 2011-05-04 |
  23. ---------------------------------------------------------------------------
  24. | 4 | Attorneys at Law | | 2011-05-05 |
  25. ---------------------------------------------------------------------------
  26. | 5 | Social Service | | 2011-05-10 |
  27. ---------------------------------------------------------------------------
  28.  
  29. Social Service 1
  30. Faith-Based Unit. 0
  31. Psychology Group 1
  32. Attorneys at Law 1
  33. Flood Relief TF 1
  34. Homeless Shelter Min. 1
  35.  
  36. SELECT t.Submitting_Agency ...
  37.  
  38. SELECT
  39. CASE t.[Task_Force__Initiative]
  40. WHEN NULL THEN -- Or whatever value constitutes "empty"
  41. t.[Submitting_Agency]
  42. ELSE
  43. t.[Task_Force__Initiative]
  44. END ...
  45.  
  46. SELECT
  47. COALESCE(RFI_.[Task_Force__Initiative], RFI_.[Submitting_Agency]),
  48. COUNT(*)
  49. FROM
  50. RFI_
  51. JOIN _LinkEnd
  52. ON RFI_.[Unique_ID]=_LinkEnd.[Entity_ID1]
  53. WHERE
  54. _LinkEnd.[Link_ID] LIKE 'CAS%'
  55. AND RFI_.[Date_Submitted] BETWEEN '20110430' AND '20110630'
  56. GROUP BY
  57. COALESCE(RFI_.[Task_Force__Initiative], RFI_.[Submitting_Agency])
  58.  
  59. SELECT COLAESCE(Task_Force__Initiative, Submitting_Agency), COUNT(DISTINCT _LinkEnd.Link_ID) AS RFICount
  60. FROM RFI_
  61. JOIN _LinkEnd ON RFI_.Unique_ID=_LinkEnd.Entity_ID1
  62. WHERE _LinkEnd.Link_ID LIKE 'CAS%' AND RFI_.Date_Submitted BETWEEN '20110430' AND '20110630'
  63. GROUP BY COLAESCE(Task_Force__Initiative, Submitting_Agency);
Advertisement
Add Comment
Please, Sign In to add comment