RoadMapper.xml 8.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233
  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.RoadMapper">
  4. <select id="findAllList" resultType="com.its.traf.dto.its.TbRoadVo" fetchSize="1000">
  5. <![CDATA[
  6. SELECT A.ROAD_ID AS ROAD_ID,
  7. A.ROAD_NM AS ROAD_NM,
  8. A.DRCT_CD AS DRCT_CD,
  9. A.STRT_NM AS STRT_NM,
  10. A.END_NM AS END_NM,
  11. A.DEL_YN AS DEL_YN,
  12. A.SECT_LNGT AS SECT_LNGT,
  13. A.F_NODE_ID AS F_NODE_ID,
  14. A.T_NODE_ID AS T_NODE_ID,
  15. A.SECT_GRAD_CD AS SECT_GRAD_CD,
  16. A.AREA_CD AS AREA_CD
  17. FROM TB_ROAD A
  18. WHERE A.DEL_YN = 'N'
  19. ]]>
  20. </select>
  21. <select id="findAllListRltnIfsc" resultType="com.its.traf.dto.its.TbRoadRltnIfscDto" fetchSize="1000">
  22. <![CDATA[
  23. SELECT A.ROAD_ID AS ROAD_ID,
  24. A.IFSC_ID AS IFSC_ID,
  25. A.ORD AS ORD
  26. FROM TB_ROAD_RLTN_IFSC A
  27. ]]>
  28. </select>
  29. <update id="updateRoadTraf" parameterType="java.util.Map">
  30. <![CDATA[
  31. MERGE INTO TB_ROAD_TRAF L
  32. USING (
  33. SELECT
  34. #{ROAD_ID} AS ROAD_ID,
  35. #{CURR_DT} AS PRCN_DT,
  36. #{TFVL} AS TFVL,
  37. #{SPED} AS SPED,
  38. #{OCPY_RATE} AS OCPY_RATE,
  39. #{TRVL_HH} AS TRVL_HH,
  40. #{CMTR_GRAD_CD} AS CMTR_GRAD_CD,
  41. #{PTRN_SPED} AS PTRN_SPED,
  42. #{DATA_NUM} AS DATA_NUM
  43. FROM DUAL
  44. ) M
  45. ON (L.ROAD_ID = M.ROAD_ID)
  46. WHEN MATCHED THEN
  47. UPDATE SET
  48. L.PRCN_DT = M.PRCN_DT,
  49. L.TFVL = M.TFVL,
  50. L.SPED = M.SPED,
  51. L.OCPY_RATE = M.OCPY_RATE,
  52. L.TRVL_HH = M.TRVL_HH,
  53. L.CMTR_GRAD_CD = M.CMTR_GRAD_CD,
  54. L.PTRN_SPED = M.PTRN_SPED,
  55. L.DATA_NUM = M.DATA_NUM
  56. WHEN NOT MATCHED THEN
  57. INSERT (
  58. ROAD_ID,
  59. PRCN_DT,
  60. TFVL,
  61. SPED,
  62. OCPY_RATE,
  63. TRVL_HH,
  64. CMTR_GRAD_CD,
  65. PTRN_SPED,
  66. DATA_NUM )
  67. VALUES (
  68. M.ROAD_ID,
  69. M.PRCN_DT,
  70. M.TFVL,
  71. M.SPED,
  72. M.OCPY_RATE,
  73. M.TRVL_HH,
  74. M.CMTR_GRAD_CD,
  75. M.PTRN_SPED,
  76. M.DATA_NUM )
  77. ]]>
  78. </update>
  79. <insert id="insertRoadTrafHs" parameterType="java.util.Map">
  80. <![CDATA[
  81. INSERT INTO TB_ROAD_TRAF_HS (
  82. ROAD_ID,
  83. PRCN_DT,
  84. TFVL,
  85. SPED,
  86. OCPY_RATE,
  87. TRVL_HH,
  88. CMTR_GRAD_CD,
  89. PTRN_SPED,
  90. DATA_NUM )
  91. VALUES (
  92. #{ROAD_ID},
  93. #{PRCN_DT},
  94. #{TFVL},
  95. #{SPED},
  96. #{OCPY_RATE},
  97. #{TRVL_HH},
  98. #{CMTR_GRAD_CD},
  99. #{PTRN_SPED},
  100. #{DATA_NUM}
  101. )
  102. ]]>
  103. </insert>
  104. <insert id="insertRoadTrafStat15M" parameterType="java.util.Map">
  105. <![CDATA[
  106. INSERT INTO TB_ROAD_STAT_15M (
  107. STAT_DT,
  108. ROAD_ID,
  109. DAY_TYPE_CD,
  110. TFVL,
  111. SPED,
  112. OCPY_RATE,
  113. TRVL_HH,
  114. DATA_NUM )
  115. VALUES (
  116. #{STAT_DT},
  117. #{ROAD_ID},
  118. #{DAY_TYPE_CD},
  119. #{TFVL},
  120. #{SPED},
  121. #{OCPY_RATE},
  122. #{TRVL_HH},
  123. #{DATA_NUM} )
  124. ]]>
  125. </insert>
  126. <insert id="createRoadTrafStatHh" parameterType="com.its.traf.vo.statistics.voStatistics">
  127. <![CDATA[
  128. INSERT INTO TB_ROAD_STAT_HH (STAT_DT,
  129. ROAD_ID,
  130. DAY_TYPE_CD,
  131. TFVL,
  132. SPED,
  133. OCPY_RATE,
  134. TRVL_HH,
  135. DATA_NUM )
  136. SELECT #{obj.STAT_DT} AS STAT_DT,
  137. ROAD_ID AS ROAD_ID,
  138. #{obj.DAY_TYPE_CD} AS DAY_TYPE_CD,
  139. SUM(TFVL) AS TFVL,
  140. ROUND(AVG(SPED), 0) AS SPED,
  141. AVG(OCPY_RATE) AS OCPY_RATE,
  142. ROUND(AVG(TRVL_HH), 0) AS TRVL_HH,
  143. COUNT(DATA_NUM) AS DATA_NUM
  144. FROM TB_ROAD_STAT_15M
  145. WHERE STAT_DT BETWEEN #{obj.STAT_FROM} AND #{obj.STAT_TO}
  146. GROUP BY ROAD_ID
  147. ]]>
  148. </insert>
  149. <insert id="createRoadTrafStatDd" parameterType="com.its.traf.vo.statistics.voStatistics">
  150. <![CDATA[
  151. INSERT INTO TB_ROAD_STAT_DD (STAT_DT,
  152. ROAD_ID,
  153. DAY_TYPE_CD,
  154. TFVL,
  155. SPED,
  156. OCPY_RATE,
  157. TRVL_HH,
  158. DATA_NUM )
  159. SELECT #{obj.STAT_DT} AS STAT_DT,
  160. ROAD_ID AS ROAD_ID,
  161. #{obj.DAY_TYPE_CD} AS DAY_TYPE_CD,
  162. SUM(TFVL) AS TFVL,
  163. ROUND(AVG(SPED), 0) AS SPED,
  164. AVG(OCPY_RATE) AS OCPY_RATE,
  165. ROUND(AVG(TRVL_HH), 0) AS TRVL_HH,
  166. COUNT(DATA_NUM) AS DATA_NUM
  167. FROM TB_ROAD_STAT_HH
  168. WHERE STAT_DT BETWEEN #{obj.STAT_FROM} AND #{obj.STAT_TO}
  169. GROUP BY ROAD_ID
  170. ]]>
  171. </insert>
  172. <update id="createRoadTrafStatMn" parameterType="com.its.traf.vo.statistics.voStatistics">
  173. <![CDATA[
  174. MERGE INTO TB_ROAD_STAT_MN L
  175. USING (
  176. SELECT #{obj.STAT_DT} AS STAT_DT,
  177. ROAD_ID AS ROAD_ID,
  178. SUM(TFVL) AS TFVL,
  179. ROUND(AVG(SPED), 0) AS SPED,
  180. AVG(OCPY_RATE) AS OCPY_RATE,
  181. ROUND(AVG(TRVL_HH), 0) AS TRVL_HH,
  182. COUNT(DATA_NUM) AS DATA_NUM
  183. FROM TB_ROAD_STAT_DD
  184. WHERE STAT_DT BETWEEN #{obj.STAT_FROM} AND #{obj.STAT_TO}
  185. GROUP BY ROAD_ID ) M
  186. ON (L.STAT_DT = M.STAT_DT AND L.ROAD_ID = M.ROAD_ID)
  187. WHEN MATCHED THEN UPDATE SET
  188. L.TFVL = M.TFVL, L.SPED = M.SPED,
  189. L.OCPY_RATE = M.OCPY_RATE, L.TRVL_HH = M.TRVL_HH,
  190. L.DATA_NUM = M.DATA_NUM
  191. WHEN NOT MATCHED THEN
  192. INSERT (L.STAT_DT, L.ROAD_ID, L.TFVL, L.SPED, L.OCPY_RATE, L.TRVL_HH, L.DATA_NUM)
  193. VALUES (M.STAT_DT, M.ROAD_ID, M.TFVL, M.SPED, M.OCPY_RATE, M.TRVL_HH, M.DATA_NUM)
  194. ]]>
  195. </update>
  196. <update id="createRoadTrafStatYy" parameterType="com.its.traf.vo.statistics.voStatistics">
  197. <![CDATA[
  198. MERGE INTO TB_ROAD_STAT_YY L
  199. USING (
  200. SELECT #{obj.STAT_DT} AS STAT_DT,
  201. ROAD_ID AS ROAD_ID,
  202. SUM(TFVL) AS TFVL,
  203. ROUND(AVG(SPED), 0) AS SPED,
  204. AVG(OCPY_RATE) AS OCPY_RATE,
  205. ROUND(AVG(TRVL_HH), 0) AS TRVL_HH,
  206. COUNT(DATA_NUM) AS DATA_NUM
  207. FROM TB_ROAD_STAT_MN
  208. WHERE STAT_DT BETWEEN #{obj.STAT_FROM} AND #{obj.STAT_TO}
  209. GROUP BY ROAD_ID ) M
  210. ON (L.ROAD_ID = M.ROAD_ID AND L.STAT_DT = M.STAT_DT)
  211. WHEN MATCHED THEN UPDATE SET
  212. L.TFVL = M.TFVL,
  213. L.SPED = M.SPED,
  214. L.OCPY_RATE = M.OCPY_RATE,
  215. L.TRVL_HH = M.TRVL_HH,
  216. L.DATA_NUM = M.DATA_NUM
  217. WHEN NOT MATCHED THEN
  218. INSERT (L.STAT_DT, L.ROAD_ID, L.TFVL, L.SPED, L.OCPY_RATE, L.TRVL_HH, L.DATA_NUM)
  219. VALUES (M.STAT_DT, M.ROAD_ID, M.TFVL, M.SPED, M.OCPY_RATE, M.TRVL_HH, M.DATA_NUM)
  220. ]]>
  221. </update>
  222. </mapper>