VdsStatMapper.xml 8.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157
  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.traf.dao.mapper.its.VdsStatMapper">
  4. <insert id="CRT_TB_VDS_DTCT_STAT_15M" parameterType="com.its.traf.vo.statistics.voStatistics">
  5. <![CDATA[
  6. INSERT INTO TB_VDS_DTCT_STAT_15M (STAT_DT,
  7. VDS_DTCT_NMBR,
  8. TFVL,
  9. AVRG_SPED,
  10. AVRG_OCPY_RATE,
  11. AVRG_LNGT,
  12. AVRG_HDWY,
  13. AVRG_SPCE_OCPY_RATE,
  14. AVRG_SPCE_AVRG_SPED
  15. )
  16. SELECT #{obj.STAT_DT} AS STAT_DT,
  17. VDS_DTCT_NMBR AS VDS_DTCT_NMBR,
  18. SUM(TFVL) AS TFVL,
  19. ROUND(AVG(SPED), 0) AS AVRG_SPED,
  20. AVG(AVRG_OCPY_RATE) AS AVRG_OCPY_RATE,
  21. AVG(AVRG_LNGT) AS AVRG_LNGT,
  22. ROUND(AVG(HDWY), 0) AS AVRG_HDWY,
  23. AVG(SPCE_OCPY_RATE) AS AVRG_SPCE_OCPY_RATE,
  24. ROUND(AVG(SPCE_AVRG_SPED), 0) AS AVRG_SPCE_AVRG_SPED
  25. FROM TB_VDS_DTCT_CLCT
  26. WHERE CLCT_DT BETWEEN #{obj.STAT_FROM} AND #{obj.STAT_TO}
  27. GROUP BY VDS_DTCT_NMBR
  28. ]]>
  29. </insert>
  30. <insert id="CRT_TB_VDS_DTCT_STAT_HH" parameterType="com.its.traf.vo.statistics.voStatistics">
  31. <![CDATA[
  32. INSERT INTO TB_VDS_DTCT_STAT_HH (STAT_DT,
  33. VDS_DTCT_NMBR,
  34. TFVL,
  35. AVRG_SPED,
  36. AVRG_OCPY_RATE,
  37. AVRG_LNGT,
  38. AVRG_HDWY,
  39. AVRG_SPCE_OCPY_RATE,
  40. AVRG_SPCE_AVRG_SPED
  41. )
  42. SELECT #{obj.STAT_DT} AS STAT_DT,
  43. VDS_DTCT_NMBR AS VDS_DTCT_NMBR,
  44. SUM(TFVL) AS TFVL,
  45. ROUND(AVG(AVRG_SPED), 0) AS AVRG_SPED,
  46. AVG(AVRG_OCPY_RATE) AS AVRG_OCPY_RATE,
  47. AVG(AVRG_LNGT) AS AVRG_LNGT,
  48. ROUND(AVG(AVRG_HDWY), 0) AS AVRG_HDWY,
  49. AVG(AVRG_SPCE_OCPY_RATE) AS AVRG_SPCE_OCPY_RATE,
  50. ROUND(AVG(AVRG_SPCE_AVRG_SPED), 0) AS AVRG_SPCE_AVRG_SPED
  51. FROM TB_VDS_DTCT_STAT_15M
  52. WHERE STAT_DT BETWEEN #{obj.STAT_FROM} AND #{obj.STAT_TO}
  53. GROUP BY VDS_DTCT_NMBR
  54. ]]>
  55. </insert>
  56. <insert id="CRT_TB_VDS_DTCT_STAT_DD" parameterType="com.its.traf.vo.statistics.voStatistics">
  57. <![CDATA[
  58. INSERT INTO TB_VDS_DTCT_STAT_DD (STAT_DT,
  59. VDS_DTCT_NMBR,
  60. TFVL,
  61. AVRG_SPED,
  62. AVRG_OCPY_RATE,
  63. AVRG_LNGT,
  64. AVRG_HDWY,
  65. AVRG_SPCE_OCPY_RATE,
  66. AVRG_SPCE_AVRG_SPED
  67. )
  68. SELECT #{obj.STAT_DT} AS STAT_DT,
  69. VDS_DTCT_NMBR AS VDS_DTCT_NMBR,
  70. SUM(TFVL) AS TFVL,
  71. ROUND(AVG(AVRG_SPED), 0) AS AVRG_SPED,
  72. AVG(AVRG_OCPY_RATE) AS AVRG_OCPY_RATE,
  73. AVG(AVRG_LNGT) AS AVRG_LNGT,
  74. ROUND(AVG(AVRG_HDWY), 0) AS AVRG_HDWY,
  75. AVG(AVRG_SPCE_OCPY_RATE) AS AVRG_SPCE_OCPY_RATE,
  76. ROUND(AVG(AVRG_SPCE_AVRG_SPED), 0) AS AVRG_SPCE_AVRG_SPED
  77. FROM TB_VDS_DTCT_STAT_HH
  78. WHERE STAT_DT BETWEEN #{obj.STAT_FROM} AND #{obj.STAT_TO}
  79. GROUP BY VDS_DTCT_NMBR
  80. ]]>
  81. </insert>
  82. <update id="CRT_TB_VDS_DTCT_STAT_MN" parameterType="com.its.traf.vo.statistics.voStatistics">
  83. <![CDATA[
  84. MERGE INTO TB_VDS_DTCT_STAT_MN L
  85. USING (
  86. SELECT #{obj.STAT_DT} AS STAT_DT,
  87. VDS_DTCT_NMBR AS VDS_DTCT_NMBR,
  88. SUM(TFVL) AS TFVL,
  89. ROUND(AVG(AVRG_SPED), 0) AS AVRG_SPED,
  90. AVG(AVRG_OCPY_RATE) AS AVRG_OCPY_RATE,
  91. AVG(AVRG_LNGT) AS AVRG_LNGT,
  92. ROUND(AVG(AVRG_HDWY), 0) AS AVRG_HDWY,
  93. AVG(AVRG_SPCE_OCPY_RATE) AS AVRG_SPCE_OCPY_RATE,
  94. ROUND(AVG(AVRG_SPCE_AVRG_SPED), 0) AS AVRG_SPCE_AVRG_SPED
  95. FROM TB_VDS_DTCT_STAT_DD
  96. WHERE STAT_DT BETWEEN #{obj.STAT_FROM} AND #{obj.STAT_TO}
  97. GROUP BY VDS_DTCT_NMBR ) M
  98. ON (L.STAT_DT = M.STAT_DT
  99. AND L.VDS_DTCT_NMBR = M.VDS_DTCT_NMBR)
  100. WHEN MATCHED THEN UPDATE SET
  101. L.TFVL = M.TFVL,
  102. L.AVRG_SPED = M.AVRG_SPED,
  103. L.AVRG_OCPY_RATE = M.AVRG_OCPY_RATE,
  104. L.AVRG_LNGT = M.AVRG_LNGT,
  105. L.AVRG_HDWY = M.AVRG_HDWY,
  106. L.AVRG_SPCE_OCPY_RATE = M.AVRG_SPCE_OCPY_RATE,
  107. L.AVRG_SPCE_AVRG_SPED = M.AVRG_SPCE_AVRG_SPED
  108. WHEN NOT MATCHED THEN
  109. INSERT(L.STAT_DT, L.VDS_DTCT_NMBR, L.TFVL, L.AVRG_SPED,
  110. L.AVRG_OCPY_RATE, L.AVRG_LNGT, L.AVRG_HDWY, L.AVRG_SPCE_OCPY_RATE, L.AVRG_SPCE_AVRG_SPED )
  111. VALUES(M.STAT_DT, M.VDS_DTCT_NMBR, M.TFVL, M.AVRG_SPED,
  112. M.AVRG_OCPY_RATE, M.AVRG_LNGT, M.AVRG_HDWY, M.AVRG_SPCE_OCPY_RATE, M.AVRG_SPCE_AVRG_SPED )
  113. ]]>
  114. </update>
  115. <update id="CRT_TB_VDS_DTCT_STAT_YY" parameterType="com.its.traf.vo.statistics.voStatistics">
  116. <![CDATA[
  117. MERGE INTO TB_VDS_DTCT_STAT_YY L
  118. USING (
  119. SELECT #{obj.STAT_DT} AS STAT_DT,
  120. VDS_DTCT_NMBR AS VDS_DTCT_NMBR,
  121. SUM(TFVL) AS TFVL,
  122. ROUND(AVG(AVRG_SPED), 0) AS AVRG_SPED,
  123. AVG(AVRG_OCPY_RATE) AS AVRG_OCPY_RATE,
  124. AVG(AVRG_LNGT) AS AVRG_LNGT,
  125. ROUND(AVG(AVRG_HDWY), 0) AS AVRG_HDWY,
  126. AVG(AVRG_SPCE_OCPY_RATE) AS AVRG_SPCE_OCPY_RATE,
  127. ROUND(AVG(AVRG_SPCE_AVRG_SPED), 0) AS AVRG_SPCE_AVRG_SPED
  128. FROM TB_VDS_DTCT_STAT_MN
  129. WHERE STAT_DT BETWEEN #{obj.STAT_FROM} AND #{obj.STAT_TO}
  130. GROUP BY VDS_DTCT_NMBR ) M
  131. ON (L.STAT_DT = M.STAT_DT
  132. AND L.VDS_DTCT_NMBR = M.VDS_DTCT_NMBR)
  133. WHEN MATCHED THEN UPDATE SET
  134. L.TFVL = M.TFVL,
  135. L.AVRG_SPED = M.AVRG_SPED,
  136. L.AVRG_OCPY_RATE = M.AVRG_OCPY_RATE,
  137. L.AVRG_LNGT = M.AVRG_LNGT,
  138. L.AVRG_HDWY = M.AVRG_HDWY,
  139. L.AVRG_SPCE_OCPY_RATE = M.AVRG_SPCE_OCPY_RATE,
  140. L.AVRG_SPCE_AVRG_SPED = M.AVRG_SPCE_AVRG_SPED
  141. WHEN NOT MATCHED THEN
  142. INSERT(L.STAT_DT, L.VDS_DTCT_NMBR, L.TFVL, L.AVRG_SPED,
  143. L.AVRG_OCPY_RATE, L.AVRG_LNGT, L.AVRG_HDWY,
  144. L.AVRG_SPCE_OCPY_RATE, L.AVRG_SPCE_AVRG_SPED )
  145. VALUES(M.STAT_DT, M.VDS_DTCT_NMBR, M.TFVL, M.AVRG_SPED,
  146. M.AVRG_OCPY_RATE, M.AVRG_LNGT, M.AVRG_HDWY,
  147. M.AVRG_SPCE_OCPY_RATE, M.AVRG_SPCE_AVRG_SPED )
  148. ]]>
  149. </update>
  150. </mapper>