06.브랜드그룹생성.sql 1.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778
  1. TRUNCATE TABLE TB_BRAND_GROUP;
  2. INSERT INTO TB_BRAND_GROUP
  3. SELECT
  4. BRAND_NO
  5. , BRAND_KNM
  6. , BRAND_ENM
  7. , 'EN' AS DISP_NM_LANG
  8. , NULL
  9. , NULL
  10. ,'222222' AS RGB_CD
  11. , DISP_ORD
  12. , 'Y'
  13. , NULL
  14. , 'Y'
  15. , 6
  16. , NOW()
  17. , 6
  18. , NOW()
  19. FROM (
  20. SELECT
  21. BRAND_NO
  22. , BRAND_KNM
  23. , BRAND_ENM
  24. , DISP_ORD
  25. , RANK() over (PARTITION BY BRAND_ENM ORDER BY SELF_YN DESC, BRAND_NO ASC) AS RNK
  26. FROM tb_brand
  27. WHERE BRAND_ENM IS NOT NULL
  28. ) A
  29. WHERE A.RNK = 1
  30. ;
  31. UPDATE tb_brand A
  32. SET BRAND_GROUP_NO = (SELECT BRAND_GROUP_NO FROM tb_brand_group X WHERE X.BRAND_GROUP_ENM = A.BRAND_ENM)
  33. WHERE A.BRAND_ENM IS NOT NULL
  34. ;
  35. SELECT * FROM tb_brand WHERE BRAND_GROUP_NO IS NULL;
  36. INSERT INTO TB_BRAND_GROUP
  37. SELECT
  38. BRAND_NO
  39. , BRAND_KNM
  40. , BRAND_ENM
  41. , 'KO' AS DISP_NM_LANG
  42. , NULL
  43. , NULL
  44. ,'222222' AS RGB_CD
  45. , DISP_ORD
  46. , 'Y'
  47. , NULL
  48. , 'Y'
  49. , 6
  50. , NOW()
  51. , 6
  52. , NOW()
  53. FROM (
  54. SELECT
  55. BRAND_NO
  56. , BRAND_KNM
  57. , BRAND_ENM
  58. , DISP_ORD
  59. , RANK() over (PARTITION BY BRAND_KNM ORDER BY SELF_YN DESC, BRAND_NO ASC) AS RNK
  60. FROM tb_brand A
  61. WHERE BRAND_ENM IS NULL
  62. AND NOT EXISTS(
  63. SELECT 1
  64. FROM tb_brand_group X
  65. WHERE X.BRAND_GROUP_NO = A.BRAND_NO
  66. )
  67. ) A
  68. WHERE A.RNK = 1
  69. ;
  70. UPDATE tb_brand A
  71. SET BRAND_GROUP_NO = (SELECT BRAND_GROUP_NO FROM tb_brand_group X WHERE X.BRAND_GROUP_KNM = A.BRAND_KNM)
  72. WHERE A.BRAND_ENM IS NULL
  73. ;