From dc299662209ed9a122a039b0b8c76ef86e96f4b8 Mon Sep 17 00:00:00 2001 From: kjh Date: Tue, 21 Oct 2025 10:20:15 +0900 Subject: [PATCH 1/3] =?UTF-8?q?=EC=8B=9C=EA=B5=B0=EA=B5=AC=20=EC=A0=9C?= =?UTF-8?q?=EC=99=B8=20=EC=A3=BC=EC=86=8C=20=ED=95=A8=EC=88=98,=20?= =?UTF-8?q?=EC=88=AB=EC=9E=90=20=ED=95=9C=EA=B8=80=20=ED=91=9C=EA=B8=B0=20?= =?UTF-8?q?=ED=95=A8=EC=88=98=20=EC=B6=94=EA=B0=80?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../ddl/ibmsdb/FN_ADDR_SIGUNGU_REMOVE.sql | 37 +++++++++++++ DB-DDL/maria/ddl/ibmsdb/FN_NUM_TO_KOR_BIG.sql | 53 +++++++++++++++++++ 2 files changed, 90 insertions(+) create mode 100644 DB-DDL/maria/ddl/ibmsdb/FN_ADDR_SIGUNGU_REMOVE.sql create mode 100644 DB-DDL/maria/ddl/ibmsdb/FN_NUM_TO_KOR_BIG.sql diff --git a/DB-DDL/maria/ddl/ibmsdb/FN_ADDR_SIGUNGU_REMOVE.sql b/DB-DDL/maria/ddl/ibmsdb/FN_ADDR_SIGUNGU_REMOVE.sql new file mode 100644 index 0000000..5fc94dd --- /dev/null +++ b/DB-DDL/maria/ddl/ibmsdb/FN_ADDR_SIGUNGU_REMOVE.sql @@ -0,0 +1,37 @@ +CREATE OR REPLACE FUNCTION FN_ADDR_SIGUNGU_REMOVE(FULL_ADDRESS VARCHAR(500)) RETURNS VARCHAR(500) +BEGIN + DECLARE suffix VARCHAR(500); + DECLARE first_word VARCHAR(100); + DECLARE second_word VARCHAR(100); + DECLARE Third_word VARCHAR(100); + + -- 주소의 첫 번째 단어 추출 (공백 기준) + SET first_word = SUBSTRING_INDEX(full_address, ' ', 1); + SET second_word = SUBSTRING_INDEX(full_address, ' ', 2); + SET Third_word = SUBSTRING_INDEX(full_address, ' ', 3); + + -- 경기도 고양시 일산서구 법곳동 11-111 + -- 서울특별시 영등포구 신길동 11-111 + -- 경기도 양평군 양평읍 11-111 + -- 인천광역시 부평구 구산동 370 + + IF first_word LIKE '%도' THEN + SET suffix = SUBSTRING(full_address, LOCATE(' ', full_address) + 1); + ELSEIF first_word LIKE '%시' THEN + SET suffix = SUBSTRING(full_address, LOCATE(' ', full_address) + 1); + END IF; + + IF second_word LIKE '%시' THEN + SET suffix = SUBSTRING(suffix, LOCATE(' ', suffix) + 1); + ELSEIF second_word LIKE '%군' THEN + SET suffix = SUBSTRING(suffix, LOCATE(' ', suffix) + 1); + ELSEIF second_word LIKE '%구' THEN + SET suffix = SUBSTRING(suffix, LOCATE(' ', suffix) + 1); + END IF; + + IF Third_word LIKE '%구' THEN + SET suffix = SUBSTRING(suffix, LOCATE(' ', suffix) + 1); + END IF; + + RETURN LTRIM(suffix); -- 최종 결과 반환 +END; \ No newline at end of file diff --git a/DB-DDL/maria/ddl/ibmsdb/FN_NUM_TO_KOR_BIG.sql b/DB-DDL/maria/ddl/ibmsdb/FN_NUM_TO_KOR_BIG.sql new file mode 100644 index 0000000..b67c980 --- /dev/null +++ b/DB-DDL/maria/ddl/ibmsdb/FN_NUM_TO_KOR_BIG.sql @@ -0,0 +1,53 @@ +CREATE FUNCTION FN_NUM_TO_KOR_BIG(n BIGINT) RETURNS VARCHAR(255) +BEGIN + DECLARE units CHAR(9) DEFAULT '일이삼사오육칠팔구'; + DECLARE positions CHAR(3) DEFAULT '십백천'; + DECLARE big_units CHAR(4) DEFAULT '만억조경'; -- 필요 시 '해' 등 추가 가능 + DECLARE result VARCHAR(255) DEFAULT ''; + DECLARE section BIGINT; + DECLARE section_str VARCHAR(50); + DECLARE i INT; + DECLARE digit INT; + DECLARE len INT; + DECLARE part VARCHAR(50); + DECLARE idx INT DEFAULT 0; + DECLARE temp BIGINT; + + IF n = 0 THEN + RETURN '영'; +END IF; + + SET temp = n; + + -- 억 단위 이상 처리 + WHILE temp > 0 DO + SET section = temp % 10000; -- 4자리씩 자르기 + SET section_str = ''; + SET len = LENGTH(section); + SET i = 1; + + WHILE i <= 4 DO + SET digit = FLOOR(section / POW(10, 4-i)) % 10; + IF digit <> 0 THEN + SET section_str = CONCAT(section_str, SUBSTRING(units, digit, 1)); + IF 4-i > 0 THEN + SET section_str = CONCAT(section_str, SUBSTRING(positions, 4-i, 1)); + END IF; + END IF; + SET i = i + 1; + END WHILE; + + IF section_str <> '' THEN + IF idx = 0 THEN + SET result = section_str; + ELSE + SET result = CONCAT(section_str, SUBSTRING(big_units, idx, 1), result); + END IF; + END IF; + + SET temp = FLOOR(temp / 10000); + SET idx = idx + 1; + END WHILE; + + RETURN result; +END \ No newline at end of file From 96706ac8a5991e70f7912b5da9dc47982f5bd3dd Mon Sep 17 00:00:00 2001 From: kjh Date: Tue, 21 Oct 2025 10:20:28 +0900 Subject: [PATCH 2/3] =?UTF-8?q?=ED=86=B5=EC=A7=80=EB=A9=94=EB=89=B4=20?= =?UTF-8?q?=EC=A0=95=EB=A0=AC=20=EC=88=98=EC=A0=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/main/resources/mybatis/mapper/noti/NotiMapper_maria.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/main/resources/mybatis/mapper/noti/NotiMapper_maria.xml b/src/main/resources/mybatis/mapper/noti/NotiMapper_maria.xml index 85fb52d..7dbca41 100644 --- a/src/main/resources/mybatis/mapper/noti/NotiMapper_maria.xml +++ b/src/main/resources/mybatis/mapper/noti/NotiMapper_maria.xml @@ -61,7 +61,7 @@ AND ii.IMPLT_TASK_SE_CD IN ('1', '2', '3') - ORDER BY ii.CRDN_NO, a.ACT_NO ASC + ORDER BY ii.CRDN_NO DESC, a.ACT_NO ASC LIMIT #{startIndex}, #{perPage} From 5d0c4a8965c84708cb821d1b0dfc2f3372f823f7 Mon Sep 17 00:00:00 2001 From: kjh Date: Tue, 21 Oct 2025 10:40:48 +0900 Subject: [PATCH 3/3] =?UTF-8?q?=EC=86=8C=EC=9C=A0=EC=9E=90=20=EC=A0=95?= =?UTF-8?q?=EB=B3=B4=20=EC=9C=84=EC=B9=98=20=EC=A0=95=EB=B3=B4=20ID,=20?= =?UTF-8?q?=EC=86=8C=EC=9C=A0=EC=9E=90=20ID=20=EC=BB=AC=EB=9F=BC=20?= =?UTF-8?q?=EA=B8=B8=EC=9D=B4=20=EC=98=A4=EB=A5=98=20=EC=88=98=EC=A0=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- DB-DDL/maria/ddl/ibmsdb/tb_ownr_info.sql | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/DB-DDL/maria/ddl/ibmsdb/tb_ownr_info.sql b/DB-DDL/maria/ddl/ibmsdb/tb_ownr_info.sql index 657a706..3c67c00 100644 --- a/DB-DDL/maria/ddl/ibmsdb/tb_ownr_info.sql +++ b/DB-DDL/maria/ddl/ibmsdb/tb_ownr_info.sql @@ -5,8 +5,8 @@ create table tb_ownr_info SGG_CD varchar(5) not null comment '시군구 코드', CRDN_YR char(4) null comment '단속 연도', CRDN_NO varchar(6) null comment '단속 번호', - PSTN_INFO_ID char(18) null comment '위치 정보 ID', - OWNR_ID char(18) null comment '소유자 ID', + PSTN_INFO_ID varchar(10) null comment '위치 정보 ID', + OWNR_ID varchar(10) null comment '소유자 ID', REG_DT datetime null comment '등록 일시', RGTR varchar(11) null comment '등록자', DEL_YN char not null comment '삭제 여부',