AtrdTrafficStatisticsMapper.xml 34 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776
  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.op.dao.mapper.its.atrd.AtrdTrafficStatisticsMapper">
  4. <!--
  5. 기간 검색 - 15분, 시간, 일, 월, 년(링크, 서비스링크, 도로)
  6. -->
  7. <select id="findAllLinkStatByIdTerm" parameterType="com.its.op.dto.its.statistics.TrafficTermParam" resultType="com.its.op.dto.its.atrd.AtrdTrafficStatDto">
  8. SELECT A.LINK_ID AS ID, 1 AS ORD, A.STAT_DT,
  9. NVL(TRIM(C.NODE_NAME), '값없음') AS F_NAME, NVL(TRIM(D.NODE_NAME), '값없음') AS T_NAME,
  10. B.LINK_LENG AS SECT_LNGT,
  11. A.TFVL, A.SPED, A.OCPY_RATE, A.TRVL_HH
  12. FROM (SELECT A.LINK_ID,
  13. A.STAT_DT,
  14. A.TFVL, A.SPED, A.OCPY_RATE, A.TRVL_HH
  15. <if test='cond.TABLE_NAME eq "TB_LINK_STAT_15M"'>
  16. FROM TB_LINK_STAT_15M A
  17. </if>
  18. <if test='cond.TABLE_NAME eq "TB_LINK_STAT_HH"'>
  19. FROM TB_LINK_STAT_HH A
  20. </if>
  21. <if test='cond.TABLE_NAME eq "TB_LINK_STAT_DD"'>
  22. FROM TB_LINK_STAT_DD A
  23. </if>
  24. <if test='cond.TABLE_NAME eq "TB_LINK_STAT_MN"'>
  25. FROM TB_LINK_STAT_MN A
  26. </if>
  27. <if test='cond.TABLE_NAME eq "TB_LINK_STAT_YY"'>
  28. FROM TB_LINK_STAT_YY A
  29. </if>
  30. WHERE A.LINK_ID = TO_NUMBER(#{cond.ID})
  31. AND A.STAT_DT BETWEEN #{cond.FROM_DT} AND #{cond.TO_DT}
  32. ) A,
  33. TB_LINK B, TB_NODE C, TB_NODE D
  34. WHERE B.DEL_YN = 'N'
  35. AND A.LINK_ID = B.LINK_ID
  36. AND B.F_NODE_ID = C.NODE_ID(+)
  37. AND B.T_NODE_ID = D.NODE_ID(+)
  38. ORDER BY A.STAT_DT
  39. </select>
  40. <select id="findAllLinkStatByAtrdIdTerm" parameterType="com.its.op.dto.its.statistics.TrafficTermParam" resultType="com.its.op.dto.its.atrd.AtrdTrafficStatDto">
  41. SELECT A.LINK_ID AS ID, A.ORD, A.STAT_DT,
  42. NVL(TRIM(C.NODE_NAME), '값없음') AS F_NAME, NVL(TRIM(D.NODE_NAME), '값없음') AS T_NAME,
  43. B.LINK_LENG AS SECT_LNGT,
  44. A.TFVL, A.SPED, A.OCPY_RATE, A.TRVL_HH
  45. FROM (SELECT A.LINK_ID, B.ORD,
  46. A.STAT_DT,
  47. A.TFVL, A.SPED, A.OCPY_RATE, A.TRVL_HH
  48. <if test='cond.TABLE_NAME eq "TB_LINK_STAT_15M"'>
  49. FROM TB_LINK_STAT_15M A,
  50. </if>
  51. <if test='cond.TABLE_NAME eq "TB_LINK_STAT_HH"'>
  52. FROM TB_LINK_STAT_HH A,
  53. </if>
  54. <if test='cond.TABLE_NAME eq "TB_LINK_STAT_DD"'>
  55. FROM TB_LINK_STAT_DD A,
  56. </if>
  57. <if test='cond.TABLE_NAME eq "TB_LINK_STAT_MN"'>
  58. FROM TB_LINK_STAT_MN A,
  59. </if>
  60. <if test='cond.TABLE_NAME eq "TB_LINK_STAT_YY"'>
  61. FROM TB_LINK_STAT_YY A,
  62. </if>
  63. (SELECT C.LINK_ID,
  64. RANK() OVER(PARTITION BY A.ATRD_ID ORDER BY A.ORD, B.ORD, C.ORD) AS ORD
  65. FROM TB_ATRD_RLTN_ROAD A, TB_ROAD_RLTN_IFSC B, TB_IFSC_RLTN_LINK C
  66. WHERE A.ATRD_ID = #{cond.ID}
  67. AND A.ROAD_ID = B.ROAD_ID
  68. AND B.IFSC_ID = C.IFSC_ID
  69. ) B
  70. WHERE A.LINK_ID = B.LINK_ID
  71. AND A.STAT_DT BETWEEN #{cond.FROM_DT} AND #{cond.TO_DT}
  72. ) A,
  73. TB_LINK B, TB_NODE C, TB_NODE D
  74. WHERE B.DEL_YN = 'N'
  75. AND A.LINK_ID = B.LINK_ID
  76. AND B.F_NODE_ID = C.NODE_ID(+)
  77. AND B.T_NODE_ID = D.NODE_ID(+)
  78. ORDER BY A.ORD, A.STAT_DT
  79. </select>
  80. <select id="findAllIfscStatByIdTerm" parameterType="com.its.op.dto.its.statistics.TrafficTermParam" resultType="com.its.op.dto.its.atrd.AtrdTrafficStatDto">
  81. SELECT A.IFSC_ID AS ID, 1 AS ORD, A.STAT_DT,
  82. NVL(TRIM(C.NODE_NAME), '값없음') AS F_NAME, NVL(TRIM(D.NODE_NAME), '값없음') AS T_NAME,
  83. B.SECT_LNGT AS SECT_LNGT,
  84. A.TFVL, A.SPED, A.OCPY_RATE, A.TRVL_HH
  85. FROM (SELECT A.IFSC_ID,
  86. A.STAT_DT,
  87. A.TFVL, A.SPED, A.OCPY_RATE, A.TRVL_HH
  88. <if test='cond.TABLE_NAME eq "TB_IFSC_STAT_15M"'>
  89. FROM TB_IFSC_STAT_15M A
  90. </if>
  91. <if test='cond.TABLE_NAME eq "TB_IFSC_STAT_HH"'>
  92. FROM TB_IFSC_STAT_HH A
  93. </if>
  94. <if test='cond.TABLE_NAME eq "TB_IFSC_STAT_DD"'>
  95. FROM TB_IFSC_STAT_DD A
  96. </if>
  97. <if test='cond.TABLE_NAME eq "TB_IFSC_STAT_MN"'>
  98. FROM TB_IFSC_STAT_MN A
  99. </if>
  100. <if test='cond.TABLE_NAME eq "TB_IFSC_STAT_YY"'>
  101. FROM TB_IFSC_STAT_YY A
  102. </if>
  103. WHERE A.IFSC_ID = TO_NUMBER(#{cond.ID})
  104. AND A.STAT_DT BETWEEN #{cond.FROM_DT} AND #{cond.TO_DT}
  105. ) A,
  106. TB_IFSC B, TB_NODE C, TB_NODE D
  107. WHERE B.DEL_YN = 'N'
  108. AND A.IFSC_ID = B.IFSC_ID
  109. AND B.F_NODE_ID = C.NODE_ID(+)
  110. AND B.T_NODE_ID = D.NODE_ID(+)
  111. ORDER BY A.STAT_DT
  112. </select>
  113. <select id="findAllIfscStatByAtrdIdTerm" parameterType="com.its.op.dto.its.statistics.TrafficTermParam" resultType="com.its.op.dto.its.atrd.AtrdTrafficStatDto">
  114. SELECT A.IFSC_ID AS ID, A.ORD, A.STAT_DT,
  115. NVL(TRIM(C.NODE_NAME), '값없음') AS F_NAME, NVL(TRIM(D.NODE_NAME), '값없음') AS T_NAME,
  116. B.SECT_LNGT AS SECT_LNGT,
  117. A.TFVL, A.SPED, A.OCPY_RATE, A.TRVL_HH
  118. FROM (SELECT A.IFSC_ID, B.ORD,
  119. A.STAT_DT,
  120. A.TFVL, A.SPED, A.OCPY_RATE, A.TRVL_HH
  121. <if test='cond.TABLE_NAME eq "TB_IFSC_STAT_15M"'>
  122. FROM TB_IFSC_STAT_15M A,
  123. </if>
  124. <if test='cond.TABLE_NAME eq "TB_IFSC_STAT_HH"'>
  125. FROM TB_IFSC_STAT_HH A,
  126. </if>
  127. <if test='cond.TABLE_NAME eq "TB_IFSC_STAT_DD"'>
  128. FROM TB_IFSC_STAT_DD A,
  129. </if>
  130. <if test='cond.TABLE_NAME eq "TB_IFSC_STAT_MN"'>
  131. FROM TB_IFSC_STAT_MN A,
  132. </if>
  133. <if test='cond.TABLE_NAME eq "TB_IFSC_STAT_YY"'>
  134. FROM TB_IFSC_STAT_YY A,
  135. </if>
  136. (SELECT B.IFSC_ID,
  137. RANK() OVER(PARTITION BY A.ATRD_ID ORDER BY A.ORD, B.ORD) AS ORD
  138. FROM TB_ATRD_RLTN_ROAD A, TB_ROAD_RLTN_IFSC B
  139. WHERE A.ATRD_ID = #{cond.ID}
  140. AND A.ROAD_ID = B.ROAD_ID
  141. ) B
  142. WHERE A.IFSC_ID = B.IFSC_ID
  143. AND A.STAT_DT BETWEEN #{cond.FROM_DT} AND #{cond.TO_DT}
  144. ) A,
  145. TB_IFSC B, TB_NODE C, TB_NODE D
  146. WHERE B.DEL_YN = 'N'
  147. AND A.IFSC_ID = B.IFSC_ID
  148. AND B.F_NODE_ID = C.NODE_ID(+)
  149. AND B.T_NODE_ID = D.NODE_ID(+)
  150. ORDER BY A.ORD, A.STAT_DT
  151. </select>
  152. <select id="findAllRoadStatByIdTerm" parameterType="com.its.op.dto.its.statistics.TrafficTermParam" resultType="com.its.op.dto.its.atrd.AtrdTrafficStatDto">
  153. SELECT A.ROAD_ID AS ID, 1 AS ORD, A.STAT_DT,
  154. NVL(TRIM(C.NODE_NAME), '값없음') AS F_NAME, NVL(TRIM(D.NODE_NAME), '값없음') AS T_NAME,
  155. B.SECT_LNGT AS SECT_LNGT,
  156. A.TFVL, A.SPED, A.OCPY_RATE, A.TRVL_HH
  157. FROM (SELECT A.ROAD_ID,
  158. A.STAT_DT,
  159. A.TFVL, A.SPED, A.OCPY_RATE, A.TRVL_HH
  160. <if test='cond.TABLE_NAME eq "TB_ROAD_STAT_15M"'>
  161. FROM TB_ROAD_STAT_15M A
  162. </if>
  163. <if test='cond.TABLE_NAME eq "TB_ROAD_STAT_HH"'>
  164. FROM TB_ROAD_STAT_HH A
  165. </if>
  166. <if test='cond.TABLE_NAME eq "TB_ROAD_STAT_DD"'>
  167. FROM TB_ROAD_STAT_DD A
  168. </if>
  169. <if test='cond.TABLE_NAME eq "TB_ROAD_STAT_MN"'>
  170. FROM TB_ROAD_STAT_MN A
  171. </if>
  172. <if test='cond.TABLE_NAME eq "TB_ROAD_STAT_YY"'>
  173. FROM TB_ROAD_STAT_YY A
  174. </if>
  175. WHERE ROAD_ID = TO_NUMBER(#{cond.ID})
  176. AND STAT_DT BETWEEN #{cond.FROM_DT} AND #{cond.TO_DT}
  177. ) A,
  178. TB_ROAD B, TB_NODE C, TB_NODE D
  179. WHERE B.DEL_YN = 'N'
  180. AND A.ROAD_ID = B.ROAD_ID
  181. AND B.F_NODE_ID = C.NODE_ID(+)
  182. AND B.T_NODE_ID = D.NODE_ID(+)
  183. ORDER BY A.STAT_DT
  184. </select>
  185. <select id="findAllRoadStatByAtrdIdTerm" parameterType="com.its.op.dto.its.statistics.TrafficTermParam" resultType="com.its.op.dto.its.atrd.AtrdTrafficStatDto">
  186. SELECT A.ROAD_ID AS ID, A.ORD, A.STAT_DT,
  187. NVL(TRIM(C.NODE_NAME), '값없음') AS F_NAME, NVL(TRIM(D.NODE_NAME), '값없음') AS T_NAME,
  188. B.SECT_LNGT AS SECT_LNGT,
  189. A.TFVL, A.SPED, A.OCPY_RATE, A.TRVL_HH
  190. FROM (SELECT A.ROAD_ID, B.ORD,
  191. A.STAT_DT,
  192. A.TFVL, A.SPED, A.OCPY_RATE, A.TRVL_HH
  193. <if test='cond.TABLE_NAME eq "TB_ROAD_STAT_15M"'>
  194. FROM TB_ROAD_STAT_15M A,
  195. </if>
  196. <if test='cond.TABLE_NAME eq "TB_ROAD_STAT_HH"'>
  197. FROM TB_ROAD_STAT_HH A,
  198. </if>
  199. <if test='cond.TABLE_NAME eq "TB_ROAD_STAT_DD"'>
  200. FROM TB_ROAD_STAT_DD A,
  201. </if>
  202. <if test='cond.TABLE_NAME eq "TB_ROAD_STAT_MN"'>
  203. FROM TB_ROAD_STAT_MN A,
  204. </if>
  205. <if test='cond.TABLE_NAME eq "TB_ROAD_STAT_YY"'>
  206. FROM TB_ROAD_STAT_YY A,
  207. </if>
  208. (SELECT ROAD_ID, ORD
  209. FROM TB_ATRD_RLTN_ROAD
  210. WHERE ATRD_ID = #{cond.ID}
  211. ) B
  212. WHERE A.ROAD_ID = B.ROAD_ID
  213. AND A.STAT_DT BETWEEN #{cond.FROM_DT} AND #{cond.TO_DT}
  214. ) A,
  215. TB_ROAD B, TB_NODE C, TB_NODE D
  216. WHERE B.DEL_YN = 'N'
  217. AND A.ROAD_ID = B.ROAD_ID
  218. AND B.F_NODE_ID = C.NODE_ID(+)
  219. AND B.T_NODE_ID = D.NODE_ID(+)
  220. ORDER BY A.ORD, A.STAT_DT
  221. </select>
  222. <!--
  223. 시간대 검색 - 15분, 시간(링크, 서비스링크, 도로)
  224. -->
  225. <select id="findAllLinkStatByIdHour" parameterType="com.its.op.dto.its.statistics.TrafficHourParam" resultType="com.its.op.dto.its.atrd.AtrdTrafficStatDto">
  226. SELECT A.LINK_ID AS ID, 1 AS ORD, A.STAT_DT,
  227. NVL(TRIM(C.NODE_NAME), '값없음') AS F_NAME, NVL(TRIM(D.NODE_NAME), '값없음') AS T_NAME,
  228. B.LINK_LENG AS SECT_LNGT,
  229. A.TFVL, A.SPED, A.OCPY_RATE, A.TRVL_HH
  230. FROM (SELECT A.LINK_ID,
  231. A.STAT_DT,
  232. A.TFVL, A.SPED, A.OCPY_RATE, A.TRVL_HH
  233. <if test='cond.TABLE_NAME eq "TB_LINK_STAT_15M"'>
  234. FROM TB_LINK_STAT_15M A
  235. </if>
  236. <if test='cond.TABLE_NAME eq "TB_LINK_STAT_HH"'>
  237. FROM TB_LINK_STAT_HH A
  238. </if>
  239. <if test='cond.TABLE_NAME eq "TB_LINK_STAT_DD"'>
  240. FROM TB_LINK_STAT_DD A
  241. </if>
  242. <if test='cond.TABLE_NAME eq "TB_LINK_STAT_MN"'>
  243. FROM TB_LINK_STAT_MN A
  244. </if>
  245. <if test='cond.TABLE_NAME eq "TB_LINK_STAT_YY"'>
  246. FROM TB_LINK_STAT_YY A
  247. </if>
  248. WHERE A.LINK_ID = TO_NUMBER(#{cond.ID})
  249. AND A.STAT_DT BETWEEN #{cond.FROM_DT} AND #{cond.TO_DT}
  250. AND SUBSTR(A.STAT_DT, 9, 6) BETWEEN #{cond.FROM_HM} AND #{cond.TO_HM}
  251. ) A,
  252. TB_LINK B, TB_NODE C, TB_NODE D
  253. WHERE B.DEL_YN = 'N'
  254. AND A.LINK_ID = B.LINK_ID
  255. AND B.F_NODE_ID = C.NODE_ID(+)
  256. AND B.T_NODE_ID = D.NODE_ID(+)
  257. ORDER BY A.STAT_DT
  258. </select>
  259. <select id="findAllLinkStatByAtrdIdHour" parameterType="com.its.op.dto.its.statistics.TrafficHourParam" resultType="com.its.op.dto.its.atrd.AtrdTrafficStatDto">
  260. SELECT A.LINK_ID AS ID, A.ORD, A.STAT_DT,
  261. NVL(TRIM(C.NODE_NAME), '값없음') AS F_NAME, NVL(TRIM(D.NODE_NAME), '값없음') AS T_NAME,
  262. B.LINK_LENG AS SECT_LNGT,
  263. A.TFVL, A.SPED, A.OCPY_RATE, A.TRVL_HH
  264. FROM (SELECT A.LINK_ID, B.ORD,
  265. A.STAT_DT,
  266. A.TFVL, A.SPED, A.OCPY_RATE, A.TRVL_HH
  267. <if test='cond.TABLE_NAME eq "TB_LINK_STAT_15M"'>
  268. FROM TB_LINK_STAT_15M A,
  269. </if>
  270. <if test='cond.TABLE_NAME eq "TB_LINK_STAT_HH"'>
  271. FROM TB_LINK_STAT_HH A,
  272. </if>
  273. <if test='cond.TABLE_NAME eq "TB_LINK_STAT_DD"'>
  274. FROM TB_LINK_STAT_DD A,
  275. </if>
  276. <if test='cond.TABLE_NAME eq "TB_LINK_STAT_MN"'>
  277. FROM TB_LINK_STAT_MN A,
  278. </if>
  279. <if test='cond.TABLE_NAME eq "TB_LINK_STAT_YY"'>
  280. FROM TB_LINK_STAT_YY A,
  281. </if>
  282. (SELECT C.LINK_ID,
  283. RANK() OVER(PARTITION BY A.ATRD_ID ORDER BY A.ORD, B.ORD, C.ORD) AS ORD
  284. FROM TB_ATRD_RLTN_ROAD A, TB_ROAD_RLTN_IFSC B, TB_IFSC_RLTN_LINK C
  285. WHERE A.ATRD_ID = #{cond.ID}
  286. AND A.ROAD_ID = B.ROAD_ID
  287. AND B.IFSC_ID = C.IFSC_ID
  288. ) B
  289. WHERE A.LINK_ID = B.LINK_ID
  290. AND A.STAT_DT BETWEEN #{cond.FROM_DT} AND #{cond.TO_DT}
  291. AND SUBSTR(A.STAT_DT, 9, 6) BETWEEN #{cond.FROM_HM} AND #{cond.TO_HM}
  292. ) A,
  293. TB_LINK B, TB_NODE C, TB_NODE D
  294. WHERE B.DEL_YN = 'N'
  295. AND A.LINK_ID = B.LINK_ID
  296. AND B.F_NODE_ID = C.NODE_ID(+)
  297. AND B.T_NODE_ID = D.NODE_ID(+)
  298. ORDER BY A.ORD, A.STAT_DT
  299. </select>
  300. <select id="findAllIfscStatByIdHour" parameterType="com.its.op.dto.its.statistics.TrafficHourParam" resultType="com.its.op.dto.its.atrd.AtrdTrafficStatDto">
  301. SELECT A.IFSC_ID AS ID, 1 AS ORD, A.STAT_DT,
  302. NVL(TRIM(C.NODE_NAME), '값없음') AS F_NAME, NVL(TRIM(D.NODE_NAME), '값없음') AS T_NAME,
  303. B.SECT_LNGT AS SECT_LNGT,
  304. A.TFVL, A.SPED, A.OCPY_RATE, A.TRVL_HH
  305. FROM (SELECT A.IFSC_ID,
  306. A.STAT_DT,
  307. A.TFVL, A.SPED, A.OCPY_RATE, A.TRVL_HH
  308. <if test='cond.TABLE_NAME eq "TB_IFSC_STAT_15M"'>
  309. FROM TB_IFSC_STAT_15M A
  310. </if>
  311. <if test='cond.TABLE_NAME eq "TB_IFSC_STAT_HH"'>
  312. FROM TB_IFSC_STAT_HH A
  313. </if>
  314. <if test='cond.TABLE_NAME eq "TB_IFSC_STAT_DD"'>
  315. FROM TB_IFSC_STAT_DD A
  316. </if>
  317. <if test='cond.TABLE_NAME eq "TB_IFSC_STAT_MN"'>
  318. FROM TB_IFSC_STAT_MN A
  319. </if>
  320. <if test='cond.TABLE_NAME eq "TB_IFSC_STAT_YY"'>
  321. FROM TB_IFSC_STAT_YY A
  322. </if>
  323. WHERE A.IFSC_ID = TO_NUMBER(#{cond.ID})
  324. AND A.STAT_DT BETWEEN #{cond.FROM_DT} AND #{cond.TO_DT}
  325. AND SUBSTR(A.STAT_DT, 9, 6) BETWEEN #{cond.FROM_HM} AND #{cond.TO_HM}
  326. ) A,
  327. TB_IFSC B, TB_NODE C, TB_NODE D
  328. WHERE B.DEL_YN = 'N'
  329. AND A.IFSC_ID = B.IFSC_ID
  330. AND B.F_NODE_ID = C.NODE_ID(+)
  331. AND B.T_NODE_ID = D.NODE_ID(+)
  332. ORDER BY A.STAT_DT
  333. </select>
  334. <select id="findAllIfscStatByAtrdIdHour" parameterType="com.its.op.dto.its.statistics.TrafficHourParam" resultType="com.its.op.dto.its.atrd.AtrdTrafficStatDto">
  335. SELECT A.IFSC_ID AS ID, A.ORD, A.STAT_DT,
  336. NVL(TRIM(C.NODE_NAME), '값없음') AS F_NAME, NVL(TRIM(D.NODE_NAME), '값없음') AS T_NAME,
  337. B.SECT_LNGT AS SECT_LNGT,
  338. A.TFVL, A.SPED, A.OCPY_RATE, A.TRVL_HH
  339. FROM (SELECT A.IFSC_ID, B.ORD,
  340. A.STAT_DT,
  341. A.TFVL, A.SPED, A.OCPY_RATE, A.TRVL_HH
  342. <if test='cond.TABLE_NAME eq "TB_IFSC_STAT_15M"'>
  343. FROM TB_IFSC_STAT_15M A,
  344. </if>
  345. <if test='cond.TABLE_NAME eq "TB_IFSC_STAT_HH"'>
  346. FROM TB_IFSC_STAT_HH A,
  347. </if>
  348. <if test='cond.TABLE_NAME eq "TB_IFSC_STAT_DD"'>
  349. FROM TB_IFSC_STAT_DD A,
  350. </if>
  351. <if test='cond.TABLE_NAME eq "TB_IFSC_STAT_MN"'>
  352. FROM TB_IFSC_STAT_MN A,
  353. </if>
  354. <if test='cond.TABLE_NAME eq "TB_IFSC_STAT_YY"'>
  355. FROM TB_IFSC_STAT_YY A,
  356. </if>
  357. (SELECT B.IFSC_ID,
  358. RANK() OVER(PARTITION BY A.ATRD_ID ORDER BY A.ORD, B.ORD) AS ORD
  359. FROM TB_ATRD_RLTN_ROAD A, TB_ROAD_RLTN_IFSC B
  360. WHERE A.ATRD_ID = #{cond.ID}
  361. AND A.ROAD_ID = B.ROAD_ID
  362. ) B
  363. WHERE A.IFSC_ID = B.IFSC_ID
  364. AND A.STAT_DT BETWEEN #{cond.FROM_DT} AND #{cond.TO_DT}
  365. AND SUBSTR(A.STAT_DT, 9, 6) BETWEEN #{cond.FROM_HM} AND #{cond.TO_HM}
  366. ) A,
  367. TB_IFSC B, TB_NODE C, TB_NODE D
  368. WHERE B.DEL_YN = 'N'
  369. AND A.IFSC_ID = B.IFSC_ID
  370. AND B.F_NODE_ID = C.NODE_ID(+)
  371. AND B.T_NODE_ID = D.NODE_ID(+)
  372. ORDER BY A.ORD, A.STAT_DT
  373. </select>
  374. <select id="findAllRoadStatByIdHour" parameterType="com.its.op.dto.its.statistics.TrafficHourParam" resultType="com.its.op.dto.its.atrd.AtrdTrafficStatDto">
  375. SELECT A.ROAD_ID AS ID, 1 AS ORD, A.STAT_DT,
  376. NVL(TRIM(C.NODE_NAME), '값없음') AS F_NAME, NVL(TRIM(D.NODE_NAME), '값없음') AS T_NAME,
  377. B.SECT_LNGT AS SECT_LNGT,
  378. A.TFVL, A.SPED, A.OCPY_RATE, A.TRVL_HH
  379. FROM (SELECT A.ROAD_ID,
  380. A.STAT_DT,
  381. A.TFVL, A.SPED, A.OCPY_RATE, A.TRVL_HH
  382. <if test='cond.TABLE_NAME eq "TB_ROAD_STAT_15M"'>
  383. FROM TB_ROAD_STAT_15M A
  384. </if>
  385. <if test='cond.TABLE_NAME eq "TB_ROAD_STAT_HH"'>
  386. FROM TB_ROAD_STAT_HH A
  387. </if>
  388. <if test='cond.TABLE_NAME eq "TB_ROAD_STAT_DD"'>
  389. FROM TB_ROAD_STAT_DD A
  390. </if>
  391. <if test='cond.TABLE_NAME eq "TB_ROAD_STAT_MN"'>
  392. FROM TB_ROAD_STAT_MN A
  393. </if>
  394. <if test='cond.TABLE_NAME eq "TB_ROAD_STAT_YY"'>
  395. FROM TB_ROAD_STAT_YY A
  396. </if>
  397. WHERE A.ROAD_ID = TO_NUMBER(#{cond.ID})
  398. AND A.STAT_DT BETWEEN #{cond.FROM_DT} AND #{cond.TO_DT}
  399. AND SUBSTR(A.STAT_DT, 9, 6) BETWEEN #{cond.FROM_HM} AND #{cond.TO_HM}
  400. ) A,
  401. TB_ROAD B, TB_NODE C, TB_NODE D
  402. WHERE B.DEL_YN = 'N'
  403. AND A.ROAD_ID = B.ROAD_ID
  404. AND B.F_NODE_ID = C.NODE_ID(+)
  405. AND B.T_NODE_ID = D.NODE_ID(+)
  406. ORDER BY A.STAT_DT
  407. </select>
  408. <select id="findAllRoadStatByAtrdIdHour" parameterType="com.its.op.dto.its.statistics.TrafficHourParam" resultType="com.its.op.dto.its.atrd.AtrdTrafficStatDto">
  409. SELECT A.ROAD_ID AS ID, A.ORD, A.STAT_DT,
  410. NVL(TRIM(C.NODE_NAME), '값없음') AS F_NAME, NVL(TRIM(D.NODE_NAME), '값없음') AS T_NAME,
  411. B.SECT_LNGT AS SECT_LNGT,
  412. A.TFVL, A.SPED, A.OCPY_RATE, A.TRVL_HH
  413. FROM (SELECT A.ROAD_ID, B.ORD,
  414. A.STAT_DT,
  415. A.TFVL, A.SPED, A.OCPY_RATE, A.TRVL_HH
  416. <if test='cond.TABLE_NAME eq "TB_ROAD_STAT_15M"'>
  417. FROM TB_ROAD_STAT_15M A,
  418. </if>
  419. <if test='cond.TABLE_NAME eq "TB_ROAD_STAT_HH"'>
  420. FROM TB_ROAD_STAT_HH A,
  421. </if>
  422. <if test='cond.TABLE_NAME eq "TB_ROAD_STAT_DD"'>
  423. FROM TB_ROAD_STAT_DD A,
  424. </if>
  425. <if test='cond.TABLE_NAME eq "TB_ROAD_STAT_MN"'>
  426. FROM TB_ROAD_STAT_MN A,
  427. </if>
  428. <if test='cond.TABLE_NAME eq "TB_ROAD_STAT_YY"'>
  429. FROM TB_ROAD_STAT_YY A,
  430. </if>
  431. (SELECT ROAD_ID, ORD
  432. FROM TB_ATRD_RLTN_ROAD
  433. WHERE ATRD_ID = #{cond.ID}
  434. ) B
  435. WHERE A.ROAD_ID = B.ROAD_ID
  436. AND A.STAT_DT BETWEEN #{cond.FROM_DT} AND #{cond.TO_DT}
  437. AND SUBSTR(A.STAT_DT, 9, 6) BETWEEN #{cond.FROM_HM} AND #{cond.TO_HM}
  438. ) A,
  439. TB_ROAD B, TB_NODE C, TB_NODE D
  440. WHERE B.DEL_YN = 'N'
  441. AND A.ROAD_ID = B.ROAD_ID
  442. AND B.F_NODE_ID = C.NODE_ID(+)
  443. AND B.T_NODE_ID = D.NODE_ID(+)
  444. ORDER BY A.ORD, A.STAT_DT
  445. </select>
  446. <!--
  447. 지정시각 거색 - 15분, 시간(링크, 서비스링크, 도로)
  448. -->
  449. <select id="findAllLinkStatByIdSpec" parameterType="com.its.op.dto.its.statistics.TrafficSpecParam" resultType="com.its.op.dto.its.atrd.AtrdTrafficStatDto">
  450. SELECT A.LINK_ID AS ID, 1 AS ORD, A.STAT_DT,
  451. NVL(TRIM(C.NODE_NAME), '값없음') AS F_NAME, NVL(TRIM(D.NODE_NAME), '값없음') AS T_NAME,
  452. B.LINK_LENG AS SECT_LNGT,
  453. A.TFVL, A.SPED, A.OCPY_RATE, A.TRVL_HH
  454. FROM (SELECT A.LINK_ID,
  455. A.STAT_DT,
  456. A.TFVL, A.SPED, A.OCPY_RATE, A.TRVL_HH
  457. <if test='cond.TABLE_NAME eq "TB_LINK_STAT_15M"'>
  458. FROM TB_LINK_STAT_15M A
  459. </if>
  460. <if test='cond.TABLE_NAME eq "TB_LINK_STAT_HH"'>
  461. FROM TB_LINK_STAT_HH A
  462. </if>
  463. <if test='cond.TABLE_NAME eq "TB_LINK_STAT_DD"'>
  464. FROM TB_LINK_STAT_DD A
  465. </if>
  466. <if test='cond.TABLE_NAME eq "TB_LINK_STAT_MN"'>
  467. FROM TB_LINK_STAT_MN A
  468. </if>
  469. <if test='cond.TABLE_NAME eq "TB_LINK_STAT_YY"'>
  470. FROM TB_LINK_STAT_YY A
  471. </if>
  472. WHERE A.LINK_ID = TO_NUMBER(#{cond.ID})
  473. <if test="cond.statDays != null and cond.statDays.size > 0">
  474. AND
  475. <foreach collection="cond.statDays" item="day" index="index" open="(" close=")" separator=" OR ">
  476. A.STAT_DT LIKE '' || #{day} || '%'
  477. </foreach>
  478. </if>
  479. AND SUBSTR(A.STAT_DT, 9, 6) BETWEEN #{cond.FROM_HM} AND #{cond.TO_HM}
  480. ) A,
  481. TB_LINK B, TB_NODE C, TB_NODE D
  482. WHERE B.DEL_YN = 'N'
  483. AND A.LINK_ID = B.LINK_ID
  484. AND B.F_NODE_ID = C.NODE_ID(+)
  485. AND B.T_NODE_ID = D.NODE_ID(+)
  486. ORDER BY A.STAT_DT
  487. </select>
  488. <select id="findAllLinkStatByAtrdIdSpec" parameterType="com.its.op.dto.its.statistics.TrafficSpecParam" resultType="com.its.op.dto.its.atrd.AtrdTrafficStatDto">
  489. SELECT A.LINK_ID AS ID, A.ORD, A.STAT_DT,
  490. NVL(TRIM(C.NODE_NAME), '값없음') AS F_NAME, NVL(TRIM(D.NODE_NAME), '값없음') AS T_NAME,
  491. B.LINK_LENG AS SECT_LNGT,
  492. A.TFVL, A.SPED, A.OCPY_RATE, A.TRVL_HH
  493. FROM (SELECT A.LINK_ID, B.ORD,
  494. A.STAT_DT,
  495. A.TFVL, A.SPED, A.OCPY_RATE, A.TRVL_HH
  496. <if test='cond.TABLE_NAME eq "TB_LINK_STAT_15M"'>
  497. FROM TB_LINK_STAT_15M A,
  498. </if>
  499. <if test='cond.TABLE_NAME eq "TB_LINK_STAT_HH"'>
  500. FROM TB_LINK_STAT_HH A,
  501. </if>
  502. <if test='cond.TABLE_NAME eq "TB_LINK_STAT_DD"'>
  503. FROM TB_LINK_STAT_DD A,
  504. </if>
  505. <if test='cond.TABLE_NAME eq "TB_LINK_STAT_MN"'>
  506. FROM TB_LINK_STAT_MN A,
  507. </if>
  508. <if test='cond.TABLE_NAME eq "TB_LINK_STAT_YY"'>
  509. FROM TB_LINK_STAT_YY A,
  510. </if>
  511. (SELECT C.LINK_ID,
  512. RANK() OVER(PARTITION BY A.ATRD_ID ORDER BY A.ORD, B.ORD, C.ORD) AS ORD
  513. FROM TB_ATRD_RLTN_ROAD A, TB_ROAD_RLTN_IFSC B, TB_IFSC_RLTN_LINK C
  514. WHERE A.ATRD_ID = #{cond.ID}
  515. AND A.ROAD_ID = B.ROAD_ID
  516. AND B.IFSC_ID = C.IFSC_ID
  517. ) B
  518. WHERE A.LINK_ID = B.LINK_ID
  519. <if test="cond.statDays != null and cond.statDays.size > 0">
  520. AND
  521. <foreach collection="cond.statDays" item="day" index="index" open="(" close=")" separator=" OR ">
  522. A.STAT_DT LIKE '' || #{day} || '%'
  523. </foreach>
  524. </if>
  525. AND SUBSTR(A.STAT_DT, 9, 6) BETWEEN #{cond.FROM_HM} AND #{cond.TO_HM}
  526. ) A,
  527. TB_LINK B, TB_NODE C, TB_NODE D
  528. WHERE B.DEL_YN = 'N'
  529. AND A.LINK_ID = B.LINK_ID
  530. AND B.F_NODE_ID = C.NODE_ID(+)
  531. AND B.T_NODE_ID = D.NODE_ID(+)
  532. ORDER BY A.ORD, A.STAT_DT
  533. </select>
  534. <select id="findAllIfscStatByIdSpec" parameterType="com.its.op.dto.its.statistics.TrafficSpecParam" resultType="com.its.op.dto.its.atrd.AtrdTrafficStatDto">
  535. SELECT A.IFSC_ID AS ID, 1 AS ORD, A.STAT_DT,
  536. NVL(TRIM(C.NODE_NAME), '값없음') AS F_NAME, NVL(TRIM(D.NODE_NAME), '값없음') AS T_NAME,
  537. B.SECT_LNGT AS SECT_LNGT,
  538. A.TFVL, A.SPED, A.OCPY_RATE, A.TRVL_HH
  539. FROM (SELECT A.IFSC_ID,
  540. A.STAT_DT,
  541. A.TFVL, A.SPED, A.OCPY_RATE, A.TRVL_HH
  542. <if test='cond.TABLE_NAME eq "TB_IFSC_STAT_15M"'>
  543. FROM TB_IFSC_STAT_15M A
  544. </if>
  545. <if test='cond.TABLE_NAME eq "TB_IFSC_STAT_HH"'>
  546. FROM TB_IFSC_STAT_HH A
  547. </if>
  548. <if test='cond.TABLE_NAME eq "TB_IFSC_STAT_DD"'>
  549. FROM TB_IFSC_STAT_DD A
  550. </if>
  551. <if test='cond.TABLE_NAME eq "TB_IFSC_STAT_MN"'>
  552. FROM TB_IFSC_STAT_MN A
  553. </if>
  554. <if test='cond.TABLE_NAME eq "TB_IFSC_STAT_YY"'>
  555. FROM TB_IFSC_STAT_YY A
  556. </if>
  557. WHERE A.IFSC_ID = TO_NUMBER(#{cond.ID})
  558. <if test="cond.statDays != null and cond.statDays.size > 0">
  559. AND
  560. <foreach collection="cond.statDays" item="day" index="index" open="(" close=")" separator=" OR ">
  561. A.STAT_DT LIKE '' || #{day} || '%'
  562. </foreach>
  563. </if>
  564. AND SUBSTR(A.STAT_DT, 9, 6) BETWEEN #{cond.FROM_HM} AND #{cond.TO_HM}
  565. ) A,
  566. TB_IFSC B, TB_NODE C, TB_NODE D
  567. WHERE B.DEL_YN = 'N'
  568. AND A.IFSC_ID = B.IFSC_ID
  569. AND B.F_NODE_ID = C.NODE_ID(+)
  570. AND B.T_NODE_ID = D.NODE_ID(+)
  571. ORDER BY A.STAT_DT
  572. </select>
  573. <select id="findAllIfscStatByAtrdIdSpec" parameterType="com.its.op.dto.its.statistics.TrafficSpecParam" resultType="com.its.op.dto.its.atrd.AtrdTrafficStatDto">
  574. SELECT A.IFSC_ID AS ID, A.ORD, A.STAT_DT,
  575. NVL(TRIM(C.NODE_NAME), '값없음') AS F_NAME, NVL(TRIM(D.NODE_NAME), '값없음') AS T_NAME,
  576. B.SECT_LNGT AS SECT_LNGT,
  577. A.TFVL, A.SPED, A.OCPY_RATE, A.TRVL_HH
  578. FROM (SELECT A.IFSC_ID, B.ORD,
  579. A.STAT_DT,
  580. A.TFVL, A.SPED, A.OCPY_RATE, A.TRVL_HH
  581. <if test='cond.TABLE_NAME eq "TB_IFSC_STAT_15M"'>
  582. FROM TB_IFSC_STAT_15M A,
  583. </if>
  584. <if test='cond.TABLE_NAME eq "TB_IFSC_STAT_HH"'>
  585. FROM TB_IFSC_STAT_HH A,
  586. </if>
  587. <if test='cond.TABLE_NAME eq "TB_IFSC_STAT_DD"'>
  588. FROM TB_IFSC_STAT_DD A,
  589. </if>
  590. <if test='cond.TABLE_NAME eq "TB_IFSC_STAT_MN"'>
  591. FROM TB_IFSC_STAT_MN A,
  592. </if>
  593. <if test='cond.TABLE_NAME eq "TB_IFSC_STAT_YY"'>
  594. FROM TB_IFSC_STAT_YY A,
  595. </if>
  596. (SELECT B.IFSC_ID,
  597. RANK() OVER(PARTITION BY A.ATRD_ID ORDER BY A.ORD, B.ORD) AS ORD
  598. FROM TB_ATRD_RLTN_ROAD A, TB_ROAD_RLTN_IFSC B
  599. WHERE A.ATRD_ID = #{cond.ID}
  600. AND A.ROAD_ID = B.ROAD_ID
  601. ) B
  602. WHERE A.IFSC_ID = B.IFSC_ID
  603. <if test="cond.statDays != null and cond.statDays.size > 0">
  604. AND
  605. <foreach collection="cond.statDays" item="day" index="index" open="(" close=")" separator=" OR ">
  606. A.STAT_DT LIKE '' || #{day} || '%'
  607. </foreach>
  608. </if>
  609. AND SUBSTR(A.STAT_DT, 9, 6) BETWEEN #{cond.FROM_HM} AND #{cond.TO_HM}
  610. ) A,
  611. TB_IFSC B, TB_NODE C, TB_NODE D
  612. WHERE B.DEL_YN = 'N'
  613. AND A.IFSC_ID = B.IFSC_ID
  614. AND B.F_NODE_ID = C.NODE_ID(+)
  615. AND B.T_NODE_ID = D.NODE_ID(+)
  616. ORDER BY A.ORD, A.STAT_DT
  617. </select>
  618. <select id="findAllRoadStatByIdSpec" parameterType="com.its.op.dto.its.statistics.TrafficSpecParam" resultType="com.its.op.dto.its.atrd.AtrdTrafficStatDto">
  619. SELECT A.ROAD_ID AS ID, 1 AS ORD, A.STAT_DT,
  620. NVL(TRIM(C.NODE_NAME), '값없음') AS F_NAME, NVL(TRIM(D.NODE_NAME), '값없음') AS T_NAME,
  621. B.SECT_LNGT AS SECT_LNGT,
  622. A.TFVL, A.SPED, A.OCPY_RATE, A.TRVL_HH
  623. FROM (SELECT A.ROAD_ID,
  624. A.STAT_DT,
  625. A.TFVL, A.SPED, A.OCPY_RATE, A.TRVL_HH
  626. <if test='cond.TABLE_NAME eq "TB_ROAD_STAT_15M"'>
  627. FROM TB_ROAD_STAT_15M A
  628. </if>
  629. <if test='cond.TABLE_NAME eq "TB_ROAD_STAT_HH"'>
  630. FROM TB_ROAD_STAT_HH A
  631. </if>
  632. <if test='cond.TABLE_NAME eq "TB_ROAD_STAT_DD"'>
  633. FROM TB_ROAD_STAT_DD A
  634. </if>
  635. <if test='cond.TABLE_NAME eq "TB_ROAD_STAT_MN"'>
  636. FROM TB_ROAD_STAT_MN A
  637. </if>
  638. <if test='cond.TABLE_NAME eq "TB_ROAD_STAT_YY"'>
  639. FROM TB_ROAD_STAT_YY A
  640. </if>
  641. WHERE A.ROAD_ID = TO_NUMBER(#{cond.ID})
  642. <if test="cond.statDays != null and cond.statDays.size > 0">
  643. AND
  644. <foreach collection="cond.statDays" item="day" index="index" open="(" close=")" separator=" OR ">
  645. A.STAT_DT LIKE '' || #{day} || '%'
  646. </foreach>
  647. </if>
  648. AND SUBSTR(A.STAT_DT, 9, 6) BETWEEN #{cond.FROM_HM} AND #{cond.TO_HM}
  649. ) A,
  650. TB_ROAD B, TB_NODE C, TB_NODE D
  651. WHERE B.DEL_YN = 'N'
  652. AND A.ROAD_ID = B.ROAD_ID
  653. AND B.F_NODE_ID = C.NODE_ID(+)
  654. AND B.T_NODE_ID = D.NODE_ID(+)
  655. ORDER BY A.STAT_DT
  656. </select>
  657. <select id="findAllRoadStatByAtrdIdSpec" parameterType="com.its.op.dto.its.statistics.TrafficSpecParam" resultType="com.its.op.dto.its.atrd.AtrdTrafficStatDto">
  658. SELECT A.ROAD_ID ID, A.ORD, A.STAT_DT,
  659. NVL(TRIM(C.NODE_NAME), '값없음') AS F_NAME, NVL(TRIM(D.NODE_NAME), '값없음') AS T_NAME,
  660. B.SECT_LNGT AS SECT_LNGT,
  661. A.TFVL, A.SPED, A.OCPY_RATE, A.TRVL_HH
  662. FROM (SELECT A.ROAD_ID, B.ORD,
  663. A.STAT_DT,
  664. A.TFVL, A.SPED, A.OCPY_RATE, A.TRVL_HH
  665. <if test='cond.TABLE_NAME eq "TB_ROAD_STAT_15M"'>
  666. FROM TB_ROAD_STAT_15M A,
  667. </if>
  668. <if test='cond.TABLE_NAME eq "TB_ROAD_STAT_HH"'>
  669. FROM TB_ROAD_STAT_HH A,
  670. </if>
  671. <if test='cond.TABLE_NAME eq "TB_ROAD_STAT_DD"'>
  672. FROM TB_ROAD_STAT_DD A,
  673. </if>
  674. <if test='cond.TABLE_NAME eq "TB_ROAD_STAT_MN"'>
  675. FROM TB_ROAD_STAT_MN A,
  676. </if>
  677. <if test='cond.TABLE_NAME eq "TB_ROAD_STAT_YY"'>
  678. FROM TB_ROAD_STAT_YY A,
  679. </if>
  680. (SELECT ROAD_ID, ORD
  681. FROM TB_ATRD_RLTN_ROAD
  682. WHERE ATRD_ID = #{cond.ID}
  683. ) B
  684. WHERE A.ROAD_ID = B.ROAD_ID
  685. <if test="cond.statDays != null and cond.statDays.size > 0">
  686. AND
  687. <foreach collection="cond.statDays" item="day" index="index" open="(" close=")" separator=" OR ">
  688. A.STAT_DT LIKE '' || #{day} || '%'
  689. </foreach>
  690. </if>
  691. AND SUBSTR(A.STAT_DT, 9, 6) BETWEEN #{cond.FROM_HM} AND #{cond.TO_HM}
  692. ) A,
  693. TB_ROAD B, TB_NODE C, TB_NODE D
  694. WHERE B.DEL_YN = 'N'
  695. AND A.ROAD_ID = B.ROAD_ID
  696. AND B.F_NODE_ID = C.NODE_ID(+)
  697. AND B.T_NODE_ID = D.NODE_ID(+)
  698. ORDER BY A.ORD, A.STAT_DT
  699. </select>
  700. <select id="findAtrdRltnLinkAll" parameterType="java.lang.String" resultType="com.its.op.dto.its.atrd.AtrdRltnIdDto">
  701. SELECT RANK() OVER(PARTITION BY A.ATRD_ID ORDER BY B.ORD, D.ORD, F.ORD) AS ord,
  702. G.LINK_ID as id,
  703. G.ROAD_NAME as name,
  704. H.NODE_NAME as strtNm,
  705. I.NODE_NAME as endNm,
  706. G.LINK_LENG as sectLngt
  707. FROM TB_ATRD A, TB_ATRD_RLTN_ROAD B, TB_ROAD C, TB_ROAD_RLTN_IFSC D, TB_IFSC E, TB_IFSC_RLTN_LINK F, TB_LINK G, TB_NODE H, TB_NODE I
  708. WHERE 1=1
  709. AND A.ATRD_ID = #{ATRD_ID}
  710. AND A.ATRD_ID = B.ATRD_ID
  711. AND B.ROAD_ID = C.ROAD_ID
  712. AND C.ROAD_ID = D.ROAD_ID
  713. AND D.IFSC_ID = E.IFSC_ID
  714. AND E.IFSC_ID = F.IFSC_ID
  715. AND F.LINK_ID = G.LINK_ID
  716. AND G.F_NODE_ID = H.NODE_ID
  717. AND G.T_NODE_ID = I.NODE_ID
  718. AND C.DEL_YN = 'N'
  719. AND E.DEL_YN = 'N'
  720. AND G.DEL_YN = 'N'
  721. </select>
  722. <select id="findAtrdRltnIfscAll" parameterType="java.lang.String" resultType="com.its.op.dto.its.atrd.AtrdRltnIdDto">
  723. SELECT RANK() OVER(PARTITION BY A.ATRD_ID ORDER BY B.ORD, D.ORD) AS ord,
  724. E.IFSC_ID as id,
  725. E.IFSC_NM as name,
  726. E.STRT_NM as strtNm,
  727. E.END_NM as endNm,
  728. E.SECT_LNGT as sectLngt
  729. FROM TB_ATRD A, TB_ATRD_RLTN_ROAD B, TB_ROAD C, TB_ROAD_RLTN_IFSC D, TB_IFSC E
  730. WHERE 1=1
  731. AND A.ATRD_ID = #{ATRD_ID}
  732. AND A.ATRD_ID = B.ATRD_ID
  733. AND B.ROAD_ID = C.ROAD_ID
  734. AND C.ROAD_ID = D.ROAD_ID
  735. AND D.IFSC_ID = E.IFSC_ID
  736. AND C.DEL_YN = 'N'
  737. AND E.DEL_YN = 'N'
  738. </select>
  739. <select id="findAtrdRltnRoadAll" parameterType="java.lang.String" resultType="com.its.op.dto.its.atrd.AtrdRltnIdDto">
  740. SELECT B.ORD AS ord,
  741. C.ROAD_ID AS id,
  742. C.ROAD_NM AS name,
  743. C.STRT_NM as strtNm,
  744. C.END_NM as endNm,
  745. C.SECT_LNGT as sectLngt
  746. FROM TB_ATRD A, TB_ATRD_RLTN_ROAD B, TB_ROAD C
  747. WHERE 1=1
  748. AND A.ATRD_ID = #{ATRD_ID}
  749. AND A.ATRD_ID = B.ATRD_ID
  750. AND B.ROAD_ID = C.ROAD_ID
  751. AND C.DEL_YN = 'N'
  752. </select>
  753. </mapper>