VW_MAIN_CATEGORY.sql 2.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109
  1. DROP VIEW VW_MAIN_CATEGORY;
  2. CREATE VIEW VW_MAIN_CATEGORY AS
  3. SELECT
  4. IF(CATE4_NO IS NULL, IF(CATE3_NO IS NULL, IF(CATE2_NO IS NULL, CATE1_NO, CATE2_NO), CATE3_NO),CATE4_NO) AS LEAF_CATE_NO
  5. , CATE1_NO
  6. , CATE1_NM
  7. , CATE2_NO
  8. , CATE2_NM
  9. , CATE3_NO
  10. , CATE3_NM
  11. , CATE4_NO
  12. , CATE4_NM
  13. , IF(CATE4_NO IS NULL, IF(CATE3_NO IS NULL, IF(CATE2_NO IS NULL, CONVERT(CATE1_NO,CHAR), CONVERT(CONCAT(CATE1_NO,'>',CATE2_NO),CHAR)),CONVERT((CONCAT(CATE1_NO,'>',CATE2_NO,'>',CATE3_NO)),CHAR)),
  14. CONVERT((CONCAT(CATE1_NO,'>',CATE2_NO,'>',CATE3_NO,'>',CATE4_NO)),CHAR)) AS FULL_CATE_NO
  15. , IF(CATE4_NM IS NULL, IF(CATE3_NM IS NULL, IF(CATE2_NM IS NULL, CONVERT(CATE1_NM,CHAR), CONVERT(CONCAT(CATE1_NM,'>',CATE2_NM),CHAR)),CONVERT((CONCAT(CATE1_NM,'>',CATE2_NM,'>',CATE3_NM)),CHAR)),
  16. CONVERT((CONCAT(CATE1_NM,'>',CATE2_NM,'>',CATE3_NM,'>',CATE4_NM)),CHAR)) AS FULL_CATE_NM
  17. , DISP_ORD
  18. , CLOC_PREFIX
  19. FROM( SELECT
  20. 0 AS CATE1_NO
  21. , '-----STYLE24-----' AS CATE1_NM
  22. , NULL AS CATE2_NO
  23. , NULL AS CATE2_NM
  24. , NULL AS CATE3_NO
  25. , NULL AS CATE3_NM
  26. , NULL AS CATE4_NO
  27. , NULL AS CATE4_NM
  28. , 1 AS DISP_ORD
  29. , NULL AS CLOC_PREFIX
  30. FROM DUAL
  31. UNION ALL
  32. SELECT
  33. 1700 AS CATE1_NO
  34. , '몰메인' AS CATE1_NM
  35. , NULL AS CATE2_NO
  36. , NULL AS CATE2_NM
  37. , NULL AS CATE3_NO
  38. , NULL AS CATE3_NM
  39. , NULL AS CATE4_NO
  40. , NULL AS CATE4_NM
  41. , 1 AS DISP_ORD
  42. , 'SMM' AS CLOC_PREFIX
  43. FROM DUAL
  44. UNION ALL
  45. SELECT
  46. 1711 AS CATE1_NO
  47. , '브랜드메인' AS CATE1_NM
  48. , NULL AS CATE2_NO
  49. , NULL AS CATE2_NM
  50. , NULL AS CATE3_NO
  51. , NULL AS CATE3_NM
  52. , NULL AS CATE4_NO
  53. , NULL AS CATE4_NM
  54. , 2 AS DISP_ORD
  55. , 'SBM' AS CLOC_PREFIX
  56. FROM DUAL
  57. UNION ALL
  58. SELECT
  59. CATE1_NO
  60. ,CATE1_NM
  61. ,CATE2_NO
  62. ,CATE2_NM
  63. ,NULL AS CATE3_NO
  64. ,NULL AS CATE3_NM
  65. ,NULL AS CATE4_NO
  66. ,NULL AS CATE4_NM
  67. ,3 AS DISP_ORD
  68. ,'SCM' AS CLOC_PREFIX
  69. FROM (
  70. SELECT 1712 AS CATE1_NO
  71. , '카테고리메인' AS CATE1_NM
  72. , A.CATE1_NO AS CATE2_NO
  73. , A.CATE1_NM AS CATE2_NM
  74. , RANK() OVER(ORDER BY A.CATE1_NO) AS DISP_ORD
  75. FROM TB_CATE_4SRCH A
  76. WHERE A.SITE_CD = 'G000_10'
  77. AND A.CATE_GB = 'G032_101'
  78. AND A.CATE_TYPE = 'G031_10'
  79. GROUP BY A.CATE1_NO, A.CATE1_NM
  80. ) A
  81. UNION ALL
  82. SELECT
  83. 1713 AS CATE1_NO
  84. , '아울렛메인' AS CATE1_NM
  85. , NULL AS CATE2_NO
  86. , NULL AS CATE2_NM
  87. , NULL AS CATE3_NO
  88. , NULL AS CATE3_NM
  89. , NULL AS CATE4_NO
  90. , NULL AS CATE4_NM
  91. , 4 AS DISP_ORD
  92. , 'SOM' AS CLOC_PREFIX
  93. FROM DUAL
  94. UNION ALL
  95. SELECT
  96. 1715 AS CATE1_NO
  97. , '광고상품메인' AS CATE1_NM
  98. , NULL AS CATE2_NO
  99. , NULL AS CATE2_NM
  100. , NULL AS CATE3_NO
  101. , NULL AS CATE3_NM
  102. , NULL AS CATE4_NO
  103. , NULL AS CATE4_NM
  104. , 6 AS DISP_ORD
  105. , 'SAD' AS CLOC_PREFIX
  106. FROM DUAL
  107. ) B
  108. ;