VdsStatMapper.xml 7.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218
  1. <?xml version="1.0" encoding="UTF-8"?>
  2. <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
  3. <mapper namespace="com.its.vds.stat.server.dao.mapper.VdsStatMapper">
  4. <delete id="delVdsDtctHs" parameterType="com.its.vds.stat.server.dto.VdsStatTimeDto">
  5. DELETE TB_VDS_DTCT_HS
  6. WHERE PRCN_DT = #{obj.STAT_DT}
  7. </delete>
  8. <insert id="crtVdsDtctHs" parameterType="com.its.vds.stat.server.dto.VdsStatTimeDto">
  9. INSERT INTO TB_VDS_DTCT_HS (
  10. PRCN_DT,
  11. VDS_DTCT_NMBR,
  12. TFVL,
  13. SPED,
  14. AVRG_OCPY_RATE,
  15. AVRG_LNGT,
  16. HDWY,
  17. SPCE_OCPY_RATE,
  18. SPCE_AVRG_SPED
  19. )
  20. SELECT
  21. #{obj.STAT_DT} AS PRCN_DT,
  22. VDS_DTCT_NMBR,
  23. SUM(TFVL),
  24. ROUND(AVG(SPED), 0),
  25. AVG(AVRG_OCPY_RATE),
  26. AVG(AVRG_LNGT),
  27. ROUND(AVG(HDWY), 0),
  28. AVG(SPCE_OCPY_RATE),
  29. ROUND(AVG(SPCE_AVRG_SPED), 0)
  30. FROM TB_VDS_DTCT_CLCT
  31. WHERE CLCT_DT BETWEEN #{obj.FROM_DT} AND #{obj.TO_DT}
  32. AND TFVL > 0
  33. AND SPED > 0
  34. GROUP BY VDS_DTCT_NMBR
  35. </insert>
  36. <delete id="delVdsDtct15MinStat" parameterType="com.its.vds.stat.server.dto.VdsStatTimeDto">
  37. DELETE TB_VDS_DTCT_15M_STAT
  38. WHERE STAT_DT = #{obj.STAT_DT}
  39. </delete>
  40. <insert id="crtVdsDtct15MinStat" parameterType="com.its.vds.stat.server.dto.VdsStatTimeDto">
  41. INSERT INTO TB_VDS_DTCT_15M_STAT (
  42. STAT_DT,
  43. VDS_DTCT_NMBR,
  44. TFVL,
  45. AVRG_SPED,
  46. AVRG_OCPY_RATE,
  47. AVRG_LNGT,
  48. AVRG_HDWY,
  49. AVRG_SPCE_OCPY_RATE,
  50. AVRG_SPCE_AVRG_SPED
  51. )
  52. SELECT
  53. #{obj.STAT_DT} AS STAT_DT,
  54. VDS_DTCT_NMBR,
  55. SUM(TFVL),
  56. ROUND(AVG(SPED), 0),
  57. AVG(AVRG_OCPY_RATE),
  58. AVG(AVRG_LNGT),
  59. ROUND(AVG(HDWY), 0),
  60. AVG(SPCE_OCPY_RATE),
  61. ROUND(AVG(SPCE_AVRG_SPED), 0)
  62. FROM TB_VDS_DTCT_HS
  63. WHERE PRCN_DT BETWEEN #{obj.FROM_DT} AND #{obj.TO_DT}
  64. AND TFVL > 0
  65. AND SPED > 0
  66. GROUP BY VDS_DTCT_NMBR
  67. </insert>
  68. <delete id="delVdsDtctHhStat" parameterType="com.its.vds.stat.server.dto.VdsStatTimeDto">
  69. DELETE TB_VDS_DTCT_HH_STAT
  70. WHERE STAT_DT = #{obj.STAT_DT}
  71. </delete>
  72. <insert id="crtVdsDtctHhStat" parameterType="com.its.vds.stat.server.dto.VdsStatTimeDto">
  73. INSERT INTO TB_VDS_DTCT_HH_STAT (
  74. STAT_DT,
  75. VDS_DTCT_NMBR,
  76. TFVL,
  77. AVRG_SPED,
  78. AVRG_OCPY_RATE,
  79. AVRG_LNGT,
  80. AVRG_HDWY,
  81. AVRG_SPCE_OCPY_RATE,
  82. AVRG_SPCE_AVRG_SPED
  83. )
  84. SELECT
  85. #{obj.STAT_DT} AS STAT_DT,
  86. VDS_DTCT_NMBR,
  87. SUM(TFVL),
  88. ROUND(AVG(AVRG_SPED), 0),
  89. AVG(AVRG_OCPY_RATE),
  90. AVG(AVRG_LNGT),
  91. ROUND(AVG(AVRG_HDWY), 0),
  92. AVG(AVRG_SPCE_OCPY_RATE),
  93. ROUND(AVG(AVRG_SPCE_AVRG_SPED), 0)
  94. FROM TB_VDS_DTCT_15M_STAT
  95. WHERE STAT_DT BETWEEN #{obj.FROM_DT} AND #{obj.TO_DT}
  96. GROUP BY VDS_DTCT_NMBR
  97. </insert>
  98. <delete id="delVdsDtctDdStat" parameterType="com.its.vds.stat.server.dto.VdsStatTimeDto">
  99. DELETE TB_VDS_DTCT_DD_STAT
  100. WHERE STAT_DT = #{obj.STAT_DT}
  101. </delete>
  102. <insert id="crtVdsDtctDdStat" parameterType="com.its.vds.stat.server.dto.VdsStatTimeDto">
  103. INSERT INTO TB_VDS_DTCT_DD_STAT (
  104. STAT_DT,
  105. VDS_DTCT_NMBR,
  106. TFVL,
  107. AVRG_SPED,
  108. AVRG_OCPY_RATE,
  109. AVRG_LNGT,
  110. AVRG_HDWY,
  111. AVRG_SPCE_OCPY_RATE,
  112. AVRG_SPCE_AVRG_SPED
  113. )
  114. SELECT
  115. #{obj.STAT_DT} AS STAT_DT,
  116. VDS_DTCT_NMBR,
  117. SUM(TFVL),
  118. ROUND(AVG(AVRG_SPED), 0),
  119. AVG(AVRG_OCPY_RATE),
  120. AVG(AVRG_LNGT),
  121. ROUND(AVG(AVRG_HDWY), 0),
  122. AVG(AVRG_SPCE_OCPY_RATE),
  123. ROUND(AVG(AVRG_SPCE_AVRG_SPED), 0)
  124. FROM TB_VDS_DTCT_HH_STAT
  125. WHERE STAT_DT BETWEEN #{obj.FROM_DT} AND #{obj.TO_DT}
  126. GROUP BY VDS_DTCT_NMBR
  127. </insert>
  128. <insert id="crtVdsDtctMnStat" parameterType="com.its.vds.stat.server.dto.VdsStatTimeDto">
  129. MERGE INTO TB_VDS_DTCT_MN_STAT L
  130. USING (
  131. SELECT
  132. #{obj.STAT_DT} AS STAT_DT,
  133. VDS_DTCT_NMBR,
  134. SUM(TFVL) AS TFVL,
  135. ROUND(AVG(AVRG_SPED), 0) AS AVRG_SPED,
  136. AVG(AVRG_OCPY_RATE) AS AVRG_OCPY_RATE,
  137. AVG(AVRG_LNGT) AS AVRG_LNGT,
  138. ROUND(AVG(AVRG_HDWY), 0) AS AVRG_HDWY,
  139. AVG(AVRG_SPCE_OCPY_RATE) AS AVRG_SPCE_OCPY_RATE,
  140. ROUND(AVG(AVRG_SPCE_AVRG_SPED), 0) AS AVRG_SPCE_AVRG_SPED
  141. FROM TB_VDS_DTCT_DD_STAT
  142. WHERE STAT_DT BETWEEN #{obj.FROM_DT} AND #{obj.TO_DT}
  143. GROUP BY VDS_DTCT_NMBR
  144. ) M
  145. ON (L.STAT_DT = M.STAT_DT AND L.VDS_DTCT_NMBR = M.VDS_DTCT_NMBR)
  146. WHEN MATCHED THEN
  147. UPDATE SET
  148. L.TFVL = M.TFVL,
  149. L.AVRG_SPED = M.AVRG_SPED,
  150. L.AVRG_OCPY_RATE = M.AVRG_OCPY_RATE,
  151. L.AVRG_LNGT = M.AVRG_LNGT,
  152. L.AVRG_HDWY = M.AVRG_HDWY,
  153. L.AVRG_SPCE_OCPY_RATE = M.AVRG_SPCE_OCPY_RATE,
  154. L.AVRG_SPCE_AVRG_SPED = M.AVRG_SPCE_AVRG_SPED
  155. WHEN NOT MATCHED THEN
  156. INSERT (
  157. STAT_DT, VDS_DTCT_NMBR, TFVL, AVRG_SPED,
  158. AVRG_OCPY_RATE, AVRG_LNGT, AVRG_HDWY,
  159. AVRG_SPCE_OCPY_RATE, AVRG_SPCE_AVRG_SPED
  160. )
  161. VALUES (
  162. M.STAT_DT, M.VDS_DTCT_NMBR, M.TFVL, M.AVRG_SPED,
  163. M.AVRG_OCPY_RATE, M.AVRG_LNGT, M.AVRG_HDWY,
  164. M.AVRG_SPCE_OCPY_RATE, M.AVRG_SPCE_AVRG_SPED
  165. )
  166. </insert>
  167. <insert id="crtVdsDtctYyStat" parameterType="com.its.vds.stat.server.dto.VdsStatTimeDto">
  168. MERGE INTO TB_VDS_DTCT_YY_STAT L
  169. USING (
  170. SELECT
  171. #{obj.STAT_DT} AS STAT_DT,
  172. VDS_DTCT_NMBR,
  173. SUM(TFVL) AS TFVL,
  174. ROUND(AVG(AVRG_SPED), 0) AS AVRG_SPED,
  175. AVG(AVRG_OCPY_RATE) AS AVRG_OCPY_RATE,
  176. AVG(AVRG_LNGT) AS AVRG_LNGT,
  177. ROUND(AVG(AVRG_HDWY), 0) AS AVRG_HDWY,
  178. AVG(AVRG_SPCE_OCPY_RATE) AS AVRG_SPCE_OCPY_RATE,
  179. ROUND(AVG(AVRG_SPCE_AVRG_SPED), 0) AS AVRG_SPCE_AVRG_SPED
  180. FROM TB_VDS_DTCT_MN_STAT
  181. WHERE STAT_DT BETWEEN #{obj.FROM_DT} AND #{obj.TO_DT}
  182. GROUP BY VDS_DTCT_NMBR
  183. ) M
  184. ON (L.STAT_DT = M.STAT_DT AND L.VDS_DTCT_NMBR = M.VDS_DTCT_NMBR)
  185. WHEN MATCHED THEN
  186. UPDATE SET
  187. L.TFVL = M.TFVL,
  188. L.AVRG_SPED = M.AVRG_SPED,
  189. L.AVRG_OCPY_RATE = M.AVRG_OCPY_RATE,
  190. L.AVRG_LNGT = M.AVRG_LNGT,
  191. L.AVRG_HDWY = M.AVRG_HDWY,
  192. L.AVRG_SPCE_OCPY_RATE = M.AVRG_SPCE_OCPY_RATE,
  193. L.AVRG_SPCE_AVRG_SPED = M.AVRG_SPCE_AVRG_SPED
  194. WHEN NOT MATCHED THEN
  195. INSERT (
  196. STAT_DT, VDS_DTCT_NMBR, TFVL, AVRG_SPED,
  197. AVRG_OCPY_RATE, AVRG_LNGT, AVRG_HDWY,
  198. AVRG_SPCE_OCPY_RATE, AVRG_SPCE_AVRG_SPED
  199. )
  200. VALUES (
  201. M.STAT_DT, M.VDS_DTCT_NMBR, M.TFVL, M.AVRG_SPED,
  202. M.AVRG_OCPY_RATE, M.AVRG_LNGT, M.AVRG_HDWY,
  203. M.AVRG_SPCE_OCPY_RATE, M.AVRG_SPCE_AVRG_SPED
  204. )
  205. </insert>
  206. </mapper>