Guest User

Untitled

a guest
Aug 15th, 2018
57
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 0.97 KB | None | 0 0
  1. Conditional GROUP BY and additional columns?
  2. Insert into x (...)
  3. select a,b,c from prq where p_a is null group by a,b,c
  4.  
  5. INSERT INTO x(a, b, c, x, y)
  6. SELECT a, b, c, MAX(CAST(NULL AS INTEGER)) AS x, MAX(CAST(NULL AS INTEGER)) AS y
  7. FROM pqr
  8. WHERE p_a IS NULL
  9. GROUP BY a, b, c
  10. UNION
  11. SELECT MAX(a) AS a, MAX(b) AS b, MAX(c) AS c, x, y
  12. FROM pqr
  13. WHERE p_a IS NOT NULL
  14. GROUP BY x, y;
  15.  
  16. INSERT INTO x(a, b, c)
  17. SELECT DISTINCT a, b, c
  18. FROM pqr
  19. WHERE p_a IS NULL;
  20. INSERT INTO x(a, b, c, x, y)
  21. SELECT MAX(a) AS a, MAX(b) AS b, MAX(c) AS c, x, y
  22. FROM pqr
  23. WHERE p_a IS NOT NULL
  24. GROUP BY x, y;
  25.  
  26. SELECT a, b, c, x, y
  27. FROM pqr
  28. WHERE p_a IS NOT NULL
  29. GROUP BY a, b, c, x, y;
  30.  
  31. SELECT DISTINCT a, b, c, x, y
  32. FROM pqr
  33. WHERE p_a IS NOT NULL;
  34.  
  35. declare @p_a datatype
  36.  
  37. select @p_a= P_a from prq
  38.  
  39. if(@p_a is null)
  40.  
  41. select a,b,c from prq group by a,b,c
  42.  
  43. else
  44.  
  45. select a,b,c from prq group by x,y
Add Comment
Please, Sign In to add comment