-- ════════════════════════════════════════════════════════════ -- 쿠팡 밀크런 — 박스 입수량 규칙의 박스명을 '쿠팡박스' 로 통일 (cupang_db) -- -- 실행 전 반드시 백업: -- docker exec postgres-db pg_dump -U postgres -d cupang_db -t cupang_box_rules \ -- > ~/backup/cupang_box_rules_$(date +%F_%H%M).sql -- -- 실행: -- docker exec -i postgres-db psql -U postgres -d cupang_db \ -- < /opt/www/main/scripts/sql/cupang_box_rules_unify_box_name.sql -- -- 주의: 박스명은 "자투리 혼합 박스" 계산에서 같은 박스끼리만 섞는 기준이다. -- 통일 후에는 2호/3호/6호 자투리가 한 박스에 섞여 계산된다. -- 기존 호수(2호/3호/6호)는 없어지지 않게 memo 뒤에 옮겨 적는다. -- ════════════════════════════════════════════════════════════ BEGIN; -- 변경 전 상태 SELECT box_name AS "변경전_박스명", count(*) AS "건수" FROM cupang_box_rules GROUP BY box_name ORDER BY box_name; UPDATE cupang_box_rules SET memo = btrim( coalesce(memo, '') || CASE WHEN coalesce(memo, '') = '' THEN '' ELSE ' · ' END || regexp_replace(box_name, '^쿠팡\s*', '') ), box_name = '쿠팡박스' WHERE box_name IS DISTINCT FROM '쿠팡박스'; COMMIT; -- 변경 후 확인 (박스명이 '쿠팡박스' 한 줄이어야 정상) SELECT box_name AS "변경후_박스명", count(*) AS "건수" FROM cupang_box_rules GROUP BY box_name ORDER BY box_name; SELECT product_code, product_name_snapshot, box_name, units_per_box, memo FROM cupang_box_rules ORDER BY product_code;