奖金排名(月).sql 3.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163
  1. SET @MONTH1 = 202101;
  2. SET @YEAR1 = 2021;
  3. SELECT
  4. M1.`会员编号`,
  5. M1.`会员姓名`,
  6. M1.`荣衔等级`,
  7. A1.`总奖金1`,
  8. B1.`总奖金2`,
  9. C1.`总奖金3`,
  10. D1.`总奖金4`,
  11. E1.`总奖金5`,
  12. F1.`总奖金6`,
  13. G1.`总奖金7`,
  14. H1.`总奖金8`,
  15. I1.`总奖金9`,
  16. J1.`总奖金10`,
  17. K1.`总奖金11`,
  18. L1.`总奖金12`,
  19. M1.`合计`
  20. FROM
  21. (SELECT
  22. U1.USER_NAME AS 会员编号,
  23. U1.REAL_NAME AS 会员姓名,
  24. E1.LEVEL_NAME AS 荣衔等级,
  25. SUM(B.BONUS_TOTAL) AS 合计
  26. FROM
  27. ar_calc_bonus B
  28. LEFT JOIN ar_user U1 ON U1.ID = B.USER_ID
  29. LEFT JOIN ar_employ_level E1 ON E1.ID = U1.EMP_LV
  30. WHERE B.CALC_YEAR = 2021
  31. GROUP BY B.USER_ID ORDER BY 合计 DESC LIMIT 20) M1
  32. LEFT JOIN
  33. (SELECT
  34. U1.USER_NAME AS 会员编号,
  35. SUM(B.BONUS_TOTAL) AS 总奖金1
  36. FROM
  37. ar_calc_bonus B
  38. LEFT JOIN ar_user U1 ON U1.ID = B.USER_ID
  39. WHERE B.CALC_MONTH = @MONTH1
  40. GROUP BY B.USER_ID)A1
  41. ON A1.`会员编号` = M1.`会员编号`
  42. LEFT JOIN
  43. (SELECT
  44. U1.USER_NAME AS `会员编号`,
  45. SUM(B.BONUS_TOTAL) AS 总奖金2
  46. FROM
  47. ar_calc_bonus B
  48. LEFT JOIN ar_user U1 ON U1.ID = B.USER_ID
  49. WHERE B.CALC_MONTH = @MONTH1+1
  50. GROUP BY B.USER_ID)B1
  51. ON B1.会员编号 = A1.`会员编号`
  52. LEFT JOIN
  53. (SELECT
  54. U1.USER_NAME AS `会员编号`,
  55. SUM(B.BONUS_TOTAL) AS 总奖金3
  56. FROM
  57. ar_calc_bonus B
  58. LEFT JOIN ar_user U1 ON U1.ID = B.USER_ID
  59. WHERE B.CALC_MONTH = @MONTH1+2
  60. GROUP BY B.USER_ID)C1
  61. ON B1.会员编号 = C1.`会员编号`
  62. LEFT JOIN
  63. (SELECT
  64. U1.USER_NAME AS `会员编号`,
  65. SUM(B.BONUS_TOTAL) AS 总奖金4
  66. FROM
  67. ar_calc_bonus B
  68. LEFT JOIN ar_user U1 ON U1.ID = B.USER_ID
  69. WHERE B.CALC_MONTH = @MONTH1+3
  70. GROUP BY B.USER_ID)D1
  71. ON D1.会员编号 = C1.`会员编号`
  72. LEFT JOIN
  73. (SELECT
  74. U1.USER_NAME AS `会员编号`,
  75. SUM(B.BONUS_TOTAL) AS 总奖金5
  76. FROM
  77. ar_calc_bonus B
  78. LEFT JOIN ar_user U1 ON U1.ID = B.USER_ID
  79. WHERE B.CALC_MONTH = @MONTH1+4
  80. GROUP BY B.USER_ID)E1
  81. ON E1.会员编号 = D1.`会员编号`
  82. LEFT JOIN
  83. (SELECT
  84. U1.USER_NAME AS `会员编号`,
  85. SUM(B.BONUS_TOTAL) AS 总奖金6
  86. FROM
  87. ar_calc_bonus B
  88. LEFT JOIN ar_user U1 ON U1.ID = B.USER_ID
  89. WHERE B.CALC_MONTH = @MONTH1+5
  90. GROUP BY B.USER_ID)F1
  91. ON F1.会员编号 = E1.`会员编号`
  92. LEFT JOIN
  93. (SELECT
  94. U1.USER_NAME AS `会员编号`,
  95. SUM(B.BONUS_TOTAL) AS 总奖金7
  96. FROM
  97. ar_calc_bonus B
  98. LEFT JOIN ar_user U1 ON U1.ID = B.USER_ID
  99. WHERE B.CALC_MONTH = @MONTH1+6
  100. GROUP BY B.USER_ID)G1
  101. ON G1.会员编号 = F1.`会员编号`
  102. LEFT JOIN
  103. (SELECT
  104. U1.USER_NAME AS `会员编号`,
  105. SUM(B.BONUS_TOTAL) AS 总奖金8
  106. FROM
  107. ar_calc_bonus B
  108. LEFT JOIN ar_user U1 ON U1.ID = B.USER_ID
  109. WHERE B.CALC_MONTH = @MONTH1+7
  110. GROUP BY B.USER_ID)H1
  111. ON H1.会员编号 = G1.`会员编号`
  112. LEFT JOIN
  113. (SELECT
  114. U1.USER_NAME AS `会员编号`,
  115. SUM(B.BONUS_TOTAL) AS 总奖金9
  116. FROM
  117. ar_calc_bonus B
  118. LEFT JOIN ar_user U1 ON U1.ID = B.USER_ID
  119. WHERE B.CALC_MONTH = @MONTH1+8
  120. GROUP BY B.USER_ID)I1
  121. ON H1.会员编号 = I1.`会员编号`
  122. LEFT JOIN
  123. (SELECT
  124. U1.USER_NAME AS `会员编号`,
  125. SUM(B.BONUS_TOTAL) AS 总奖金10
  126. FROM
  127. ar_calc_bonus B
  128. LEFT JOIN ar_user U1 ON U1.ID = B.USER_ID
  129. WHERE B.CALC_MONTH = @MONTH1+9
  130. GROUP BY B.USER_ID)J1
  131. ON J1.会员编号 = H1.`会员编号`
  132. LEFT JOIN
  133. (SELECT
  134. U1.USER_NAME AS `会员编号`,
  135. SUM(B.BONUS_TOTAL) AS 总奖金11
  136. FROM
  137. ar_calc_bonus B
  138. LEFT JOIN ar_user U1 ON U1.ID = B.USER_ID
  139. WHERE B.CALC_MONTH = @MONTH1+10
  140. GROUP BY B.USER_ID)K1
  141. ON K1.会员编号 = J1.`会员编号`
  142. LEFT JOIN
  143. (SELECT
  144. U1.USER_NAME AS `会员编号`,
  145. SUM(B.BONUS_TOTAL) AS 总奖金12
  146. FROM
  147. ar_calc_bonus B
  148. LEFT JOIN ar_user U1 ON U1.ID = B.USER_ID
  149. WHERE B.CALC_MONTH = @MONTH1+11
  150. GROUP BY B.USER_ID)L1
  151. ON L1.会员编号 = K1.`会员编号`
  152. ORDER BY M1.`合计` DESC