IT/DataBase59 [MySQL/MariaDB]๋ฌธ์์ด ๋ถ์ด๊ธฐ(concat, concat_ws) ๋ชฉ์ฐจ oracle์์๋ ||๋ก ๋ถ์ด๋ฉด ๋์ง๋ง mysql์์๋ concat()์ ์ด์ฉํด์ ๋ถ์ select concat('๋ํด๋ฌผ๊ณผ','|','๋ฐฑ๋์ฐ์ด') ์ ๊ตญ๊ฐ1; result : ๋ํด๋ฌผ๊ณผ|๋ฐฑ๋์ฐ์ด -- concat๊ฐ์ ๊ฒฝ์ฐ ์ธ์๊ฐ์ null์ด ์๋ ๊ฒฝ์ฐ null์ด return๋๋ ์ฃผ์ ํ ๊ฒ select concat('๋ํด๋ฌผ๊ณผ','|','๋ฐฑ๋์ฐ์ด',null) ์ ๊ตญ๊ฐ1; result : {null} -- ๋์ผํ ๊ตฌ๋ถ์๋ฅผ ๊ธฐ์ค์ผ๋ก ๊ณ์ ๋ฌธ์์ด์ ๋ถ์ด๋ ๊ฒฝ์ฐ๋ concat_ws()๋ฅผ ์ฌ์ฉํ๋ฉด ๋จ select CONCAT_WS('|', '๋ํด๋ฌผ๊ณผ', '๋ฐฑ๋์ฐ์ด', '๋ง๋ฅด๊ณ ๋ณ๋๋ก', 'ํ๋๋์ด', '๋ณด์ฐํ์ฌ', '์ฐ๋ฆฌ๋๋ผ', '๋ง์ธ') ์ ๊ตญ๊ฐ1; result : ๋ํด๋ฌผ๊ณผ|๋ฐฑ๋์ฐ์ด|๋ง๋ฅด๊ณ ๋ณ๋๋ก|ํ๋๋์ด|๋ณด์ฐํ์ฌ.. IT/DataBase 2022. 11. 25. [MySQL/MariaDB]'ํ ์ด๋ธ๋ช ' doesn't exist ๋ชฉ์ฐจ ํ ์ด๋ธ์ด ์๋๋ฐ ํ ์ด๋ธ์ด ์๋ค๊ณ ๋์ค๋ ๊ฒฝ์ฐ ์ฌ๋ฌ์ด์ ๊ฐ ์์ ์ ์์ง๋ง ๋์๋ฌธ์ ๊ตฌ๋ถํ๋์ง ํ์ธํด ๋ณผ ํ์๊ฐ ์์ ์๋์ฐ๋ ๊ธฐ๋ณธ์ ์ผ๋ก ๋์๋ฌธ์ ๊ตฌ๋ถ์ด ์์ด mariadb๊ฐ ์ค์น ๋์ง๋ง ๋ฆฌ๋ ์ค๋ ๋์๋ฌธ์ ๊ตฌ๋ถํด์ ์ค์นํ๋ ๊ฒฝ์ฐ๊ฐ ์์ mysql ๊ณ์ ์ผ๋ก ์ ์ ํ ์๋์ ์ฟผ๋ฆฌ๋ฅผ ๋ณด๋ธ ํ ๊ฐ์ ํ์ธํด์ผ ํจ show variables like 'lower_case_table_names'; ์ฟผ๋ฆฌ ์ง์ ๊ฐ์ด 0์ธ ๊ฒฝ์ฐ ๋์๋ฌธ์๋ฅผ ๊ตฌ๋ถ, 1์ธ ๊ฒฝ์ฐ ๋์๋ฌธ์ ๊ตฌ๋ถ์ํ๋ ๊ฑธ ์๋ฏธ ๋ง์ผ 0์ผ๋ก ๋์ด ์์ผ๋ฉด 1๋ก ๋ณ๊ฒฝ vi๋ก /etc/my.cnf์ ์ด์ด์ [mysqld]์์ lower_case_table_names = 1๋ฅผ ๋ฃ์ด์ค(๊ฒฝ๋ก๋ ๋ค๋ฅผ ์ ์์) ๊ทธ ํ mariadb or mysql ์๋น์ค ์ฌ์์ IT/DataBase 2022. 11. 23. [MySQL/MariaDB] ํ ์ด๋ธ/ํ ์ด๋ธ ๋ชฉ๋ก ์กฐํ ๋ชฉ์ฐจ Mysql/MariaDB ํ ์ด๋ธ ์กฐํ information_schema DB๋ฅผ ํ์ฉ(์ ๋ information_schema์ ์ ๋ณด๋ฅผ ์์ ํ๋ฉด ์๋จ) Mysql ํน์ MariaDB์ ๋ฉํ๋ฐ์ดํฐ ์ ๋ณด๋ฅผ ๋ด๊ณ ์๋ information_schema๋ฅผ ํ์ฉํด์ ๋ค์ํ๊ฒ ์ฌ์ฉ ๊ฐ๋ฅ(๋น ํ ์ด๋ธ ์กฐํ ๋ฑ) -- ๋น ํ ์ด๋ธ ์กฐํ SELECT TABLE_NAME AS ํ ์ด๋ธ๋ช , table_comment AS ์ฝ๋ฉํธ, table_rows AS ํ FROM information_schema.tables WHERE table_schema = '์คํค๋ง๋ช 'AND table_rows IT/DataBase 2022. 11. 23. [Cubrid]์์คํ ์นดํ๋ก๊ทธ(ํ ์ด๋ธ, ์ปฌ๋ผ ์กฐํ) db_classํ ์ด๋ธ์ ๋ํ ๋ฆฌ์คํธ ์กฐํ๋ db_class์์ ์กฐํ-> ํ ์ด๋ธ๋ช ์ด tm_user์ธ ํ ์ด๋ธ์ ์กฐํdb_attribute์ปฌ๋ผ์ ๋ํ ๋ฆฌ์คํธ ์กฐํ๋ db_attribute์์ ์กฐํ์ถ์ฒ :https://www.cubrid.org/manual/ko/9.3.0/sql/catalog.html๐ ์ด ๊ธ์ ๊ฐ์ธ ํ์ต ๋ชฉ์ ์ผ๋ก ์์ฑํ ๊ธฐ๋ก์ด๋ฉฐ, ๋ด์ฉ์ ์ค๋ฅ๊ฐ ์์ ์ ์์ต๋๋ค. ์๋ชป๋ ๋ถ๋ถ์ด ์๋ค๋ฉด ๋๊ธ๋ก ์๋ ค์ฃผ์ธ์! [linux] ๋ฆฌ๋ ์ค์ cubrid ์ค์น(feat. cubrid 11.2 ver)์ง๋์ฃผ ๋ฆฌ๋ ์ค ์๋ฒ์ cubrid DBMS๋ฅผ ์ค์น ํ๊ธฐ์ ๋ฉ๋ชจํ๋ค. ์ค์นํ ๋ ์บก์ฒ๋ฅผ ํ์ง ๋ชปํ ๊ด๊ณ๋ก ๊ธฐ์ต์ ๋๋ฌ์ด ํ๋ก์ธ์ค ์์ฃผ๋ก ๊ธฐ๋กํ๋ค. 1. ๋ฆฌ๋ ์ค ์๋ฒ์ jdk๋ฅผ ์ค์น/ํ๊ฒฝ๋ณ์ ์ธํ ์ ํ๋ค.(ํ๊ฒฝya.. IT/DataBase 2022. 11. 22. [MySQL/MariaDB] Column 'xx' in where clause is ambiguous ์๋ฌ ๋ชฉ์ฐจ Column 'xx' in where clause is ambiguous ์๋ฌ SQL์์ ํ ์ด๋ธ 2๊ฐ๋ฅผ ์กฐ์ธ ํ๋๋ฐ ์๋์ฒ๋ผ ์ฌ์ฉํด์ ๊ทธ๋ ๋ค.(์๋๋ ์์ SQL์) SELECT m.mem_seq , tg.tag_type , tg.tag_name FROM member m LEFT OUTER JOIN member_tag_mapping mtm ON m.mem_seq = mtm.mem_seq LEFT OUTER JOIN tag tg ON mtm.tag_seq = tg.tag_seq where mem_seq = 1244 memberํ ์ด๋ธ์ด ๋ค๋ฅธ ํ ์ด๋ธ ์กฐ์ธ์ ์ํด ๋ณ์นญ์ ์คฌ๋๋ฐ WHERE์ ์ mem_seq๋ ๋ณ์นญ์ ํตํด ์ ๊ทผํ ํ๋๊ฐ ์๋๋ผ์ ๊ทธ๋ ๋ค. ์๋์ฒ๋ผ m.mem_seq๋ผ๊ณ ํด์ผ ์ ์์ ์ผ๋ก ์กฐํ๊ฐ .. IT/DataBase 2022. 11. 22. [MySQL/MariaDB] merge(๊ฐ์ด ์์ผ๋ฉด update, ์๋๋ฉด insert)(feat. ON DUPLICATE KEY UPDATE...) MySQL INSERT INTO...ON DUPLICATE KEY UPDATE... ๐mysql์๋ Oracle์ merge into์ ๊ฐ์ ๊ธฐ๋ฅ์ด ์๋ค๋ ๊ฑธ ์๊ฒ๋์ด ๋ฏธ๋์ ๋ด๊ฐ ๋ณด๊ธฐ์ํด ๊ธฐ๋กํจํ ์คํธ๋ฅผ ์ํด ํ ์ด๋ธ ํ๋ ์์ฑCREATE TABLE `test_220714` ( `id` bigint(20) NOT NULL, `name` varchar(10) DEFAULT NULL, PRIMARY KEY (`id`)) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4ํ ์คํธ ๋ฐ์ดํฐ๋ฅผ 2๊ฐ ์ ๋ ์ ๋ ฅINSERT INTO test_220714(id, name)VALUES(1, 'ironMan');INSERT INTO test_220714(id, name)VALUES(2, 'thor');D.. IT/DataBase 2022. 11. 22. [MySQL/MariaDB] GROUP_CONCAT() ๊ฐ๋จ ์ฌ์ฉ๋ฒ(feat. ๋ฌธ์์ด ๋ถ์ด๊ธฐ) ๋ชฉ์ฐจ GROUP_CONCAT() ๊ฐ๋จ ์ฌ์ฉ๋ฒ ๐ ์ญ์๋ ๋ฏธ๋์ ๋ด๊ฐ ๋ณด๊ธฐ์ํด ๊ธฐ๋กํจ ์ ๋ฌด๋ฅผ ํ๋ค๋ณด๋ฉด ํน์ ํ๋๊ฐ์ ์๋์ฒ๋ผ ๊ฐ๋ก๋ก ๋ถ์ฌ์ ๋ณด์ฌ์ค์ผ ๋๋ ๊ฒฝ์ฐ๋ ์๋ค. ๋ฐ์ดํฐ๋ฅผ ํด๋ผ์ด์ธํธ์ ๋ฐํ ์ ์ฟผ๋ฆฌ 2๋ฒ ๋ ๋ฆด ๊ฑธ 1๋ฒ ๋ ๋ฆฌ๋๊ฒ ์ข๊ธฐ ๋๋ฌธ์ ์๋์ฒ๋ผ ๋ถ์ด๋ ๋ฐฉ๋ฒ๋ ์๋ค. ์๋ฅผ ๋ค์ด SNS ์๋น์ค์์ ์ต์ข ์ ์ผ๋ก ๋ฐํํด์ผ๋๋ ๋ฐ์ดํฐ๊ฐ ํ์ ์ ๋ณด + ํ์ ๋ฑ๋กํ ํด์ํ๊ทธ ๋ชฉ๋ก์ด๋ผ๊ณ ๊ฐ์ ์ ํด๋ณด๋ฉด ๋๋ต ์๋์ ๊ฐ์ ๋ฐ์ดํฐ๊ฐ ๋ฐํ๋์ผ ๋ ๊ฒ์ด๋ค. ํ์์ผ๋ จ๋ฒํธ, ํ์์์ด๋, ํ์์ด๋ฆ, ํ์์ด๋ฉ์ผ, ๊ธฐํ ํ์ ์ ๋ณด, ๊ทธ๋ฆฌ๊ณ ํด์ํ๊ทธ DB ํ ์ด๋ธ ๊ตฌ์กฐ ๐ DB ํ ์ด๋ธ์ ์๋์ ๊ฐ๋ค. ๋์ผํ ํ ์คํธ๋ฅผ ํ ์ ์๋๋ก ์คํฌ๋ฆฝํธ๋ ์ฒจ๋ถํ๋ค. script(DDL) ๋๋ณด๊ธฐ -- ํ์ ํ ์ด๋ธ CREATE TABLE `member.. IT/DataBase 2022. 11. 22. [Oracle]GROUP BY + ๊ทธ๋ฃนํจ์(SUM, COUNT ๋ฑ) ๋ชฉ์ฐจ Oracle Group by/๊ทธ๋ฃนํจ์ ์ฝ๊ฒ ์๊ฐํ๋ฉด ๋๋ค. GROUP BY ๋ค์์ ์ค๋ ์ปฌ๋ผ์ผ๋ก ๋จผ์ ๊ทธ๋ฃนํ์ ํ ๋ค์ ๊ทธ๋ฃนํจ์๋ฅผ ์คํ SELECT deptno, job, AVG(NVL(sal, 0)) "AVG_SAL" FROM emp GROUP BY deptno, job ORDER BY deptno,job; ์์ ์ฟผ๋ฆฌ๋ empํ ์ด๋ธ์์ ๋ถ์๋ฒํธ(deptno)๋ก ๋จผ์ ๊ทธ๋ฃนํ, ๊ทธ ๋ค์ ์ง์ (job)์ผ๋ก ๊ทธ๋ฃนํ์ ํ ํ SELECT์ ์ ์๋ ๊ทธ๋ฃนํจ์์ธ AVG() ํจ์๋ฅผ ์คํํ ๊ฒฐ๊ณผ๋ฅผ ๋ํ๋ธ๋ค. ์ฃผ์์ฌํญ์ด ์๋๋ฐ GROUP BY์ฌ์ฉ ์ SELECT์ ์ ๊ทธ๋ฃนํจ์๋ฅผ ์ ์ธํ ์ปฌ๋ผ์ ๋ฐ๋์ GROUP BY ์ ์ ๋์จ ์ปฌ๋ผ์ ๋ช ์ํด์ผ ํ๋ค. ์ํ ๊ฒฝ์ฐ ์๋์ฒ๋ผ ์๋ฌ ๋ฐ์ HAVING ์ ์ผ๋ฐ์ ์ผ๋ก WHERE์ ์.. IT/DataBase 2022. 11. 19. [Oracle] ORA-12547 TNS lost contact/UDE-12547 error.. ORA-12547 TNS lost contact์ํฉ : oracle ๊ณ์ ์ด ์๋ ๋ค๋ฅธ ๊ณ์ ์ผ๋ก oracle์ ์ ์ํด์ expdp๋ฅผ ์ด์ฉํด์ dump๋ฅผ ์คํ ์ค์์ด์ฉ๋ค๊ฐ ์ค์๋ก ์๋์ฒ๋ผ ์ค๋ผํด ํ์ ํด๋์ ๊ณ์ ์ other์ ๊ถํ์ rwx ๊ฐ๋ฅํ๊ฒ ๋ณ๊ฒฝ ํ๋๋sudo chmod -R 757 /oracle์์ฒ๋ผ ํ์๊ฐ ๋์์๋ค.์ค์๋ก ์ ๋์๊ฐ๋ ๋คํ๋ฅผ ์๋ชป ๊ฑด๋๋ฆฌ๋ ๋ฐ๋์..(๋ค์๋ ์ด๋ฐ ์ค์ ํ์ง ์์ผ๋ฆฌ)๋น์ฐํ ์ค๋ผํด ํด๋์ ๊ถํ ๋ฌธ์ ๋ผ๋ ๊ฐํ ํ์ ์ ๊ฐ์ง๊ณ ๊ตฌ๊ธ๋ง์ ํ์์๋ ๋ธ๋ก๊ทธ์์ ๋์์ ์ป์๋ค.$ORACLE_HOME(/oracle/app/product/12.2.0.1)/bin ์๋์ oracle ํด๋์ ๊ถํ์ 6751๋ก ๋ณ๊ฒฝ ํ์sudo chmod 6751 oracle๊ทธ ํ dump ์คํฌ๋ฆฝํธ ์คํ.. IT/DataBase 2022. 11. 19. ์ด์ 1 ยทยทยท 3 4 5 6 ๋ค์