sql mysql9 [MySQL/MariaDB] Update join... MySQL/MariaDB updae join... ๐ mysql์์ ํ ์ด๋ธ์ ์กฐ์ธํด์ update๋ฅผ ์คํํด์ผ ๋๋ ๊ฒฝ์ฐ ์๋์ฒ๋ผ ์กฐ์ธํด์ ์ ๋ฐ์ดํธ๋ฅผ ํ๋ฉด ๋๋ค. ์์ฃผ ์ฐ์ผ ๋ฏ ํ๋ ๋ฉ๋ชจ ํด๋ -- mainTable๊ณผ subTable์ no๋ก ์กฐ์ธํ ๋ค no๊ฐ ๊ฐ์ ๋ฐ์ดํฐ๋ง use_yn๊ฐ์ 'Y'๋ก ๋ณ๊ฒฝ -- (์์ชฝ ๋ชจ๋ ์๋ ๋ฐ์ดํฐ๋ง ๊ฐ์ ธ์ค๊ธฐ ์ํด inner join ์ฌ์ฉ) update mainTable a inner join subTable b on a.no = b.no set a.use_yn = 'Y' where a.no = b.no ; IT/DataBase 2022. 11. 29. [MySQL/MariaDB]ํ ์ด๋ธ ํ๋์ ๊ณต๋ฐฑ, ๊ฐํ, ์บ๋ฆฌ์ง๋ฆฌํด ์นํ ๋ชฉ์ฐจ MariaDB ํ ์ด๋ธ ํ๋์ ๊ณต๋ฐฑ, ๊ฐํ, ์บ๋ฆฌ์ง๋ฆฌํด ์นํ csvํ์ผ์ ๋ถ๋ฌ์ค๊ฑฐ๋ ๋์ ๋ฐ๋ผ ํ ์ด๋ธ์ ๊ณต๋ฐฑ ํน์ ํน์๋ฌธ์๊ฐ ์ฝ์ ๋ ๊ฒฝ์ฐ ์๋์ฒ๋ผ ์นํํด์ผ ํจ -- ๊ณต๋ฐฑ ์นํ update table set field = replace(field, ' ', ''); -- ๊ฐํ๋ฌธ์ ์นํ update table set field = replace(field, '\r\n', ''); -- ํญ ์นํ update table set field = replace(field, 'char(9)', ''); -- ๋ผ์ธํผ๋ ์นํ update table set field = replace(field, 'char(10)', ''); -- ์บ๋ฆฌ์ง๋ฆฌํด ์นํ update table set field = replace(field, .. IT/DataBase 2022. 11. 25. [MySQL/MariaDB]ํฐ๋ฏธ๋์์ sqlํ์ผ ์คํ ์์ ๋ชฉ์ฐจ mysql -uroot -p "db๋ช " < "sqlํ์ผ๋ช " ์์ ํ๋ฉด test.sql์ ๋ณ ์๋ฏธ ์๋ ํ์ผ์ด๊ณ ๋ฌธ๋ฒ ์์๋ฅผ ์ํด ๋ง๋ ํ์ผ์ด๊ณ ์ ๋ฐ์์ผ๋ก ์ฌ์ฉํ๋ฉด ๋จ ๋ด์ฉ์ด ์ ๊ธด ํ์ง๋ง ์ด๋ง ์ ๊ฒ ๋ค. IT/DataBase 2022. 11. 25. [MySQL/MariaDB]unsigned ์๋ฏธ(์์ ์ฌ์ฉํ์ง ์๋ ๊ฒฝ์ฐ) ๋ชฉ์ฐจ MySQL or MariaDB์์ ์ปฌ๋ผ ์์ฑ ์ intํ์ธ ๊ฒฝ์ฐ, ์์๋ฅผ ์ฌ์ฉํ์ง ์์ ๊ฒฝ์ฐ ์ปฌ๋ผ ์์ฑ ์ ์๋์ฒ๋ผ ๋ฐ์ดํฐ ํ ๋ค์ unsigned๋ฅผ ๋ถ์ฌ์ ์์ฑํ๋ฉด ๋จ CREATE TABLE test ( id int(11) unsigned ...์๋ต ) IT/DataBase 2022. 11. 25. [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. [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] GROUP_CONCAT() ๊ฐ๋จ ์ฌ์ฉ๋ฒ(feat. ๋ฌธ์์ด ๋ถ์ด๊ธฐ) ๋ชฉ์ฐจ GROUP_CONCAT() ๊ฐ๋จ ์ฌ์ฉ๋ฒ ๐ ์ญ์๋ ๋ฏธ๋์ ๋ด๊ฐ ๋ณด๊ธฐ์ํด ๊ธฐ๋กํจ ์ ๋ฌด๋ฅผ ํ๋ค๋ณด๋ฉด ํน์ ํ๋๊ฐ์ ์๋์ฒ๋ผ ๊ฐ๋ก๋ก ๋ถ์ฌ์ ๋ณด์ฌ์ค์ผ ๋๋ ๊ฒฝ์ฐ๋ ์๋ค. ๋ฐ์ดํฐ๋ฅผ ํด๋ผ์ด์ธํธ์ ๋ฐํ ์ ์ฟผ๋ฆฌ 2๋ฒ ๋ ๋ฆด ๊ฑธ 1๋ฒ ๋ ๋ฆฌ๋๊ฒ ์ข๊ธฐ ๋๋ฌธ์ ์๋์ฒ๋ผ ๋ถ์ด๋ ๋ฐฉ๋ฒ๋ ์๋ค. ์๋ฅผ ๋ค์ด SNS ์๋น์ค์์ ์ต์ข ์ ์ผ๋ก ๋ฐํํด์ผ๋๋ ๋ฐ์ดํฐ๊ฐ ํ์ ์ ๋ณด + ํ์ ๋ฑ๋กํ ํด์ํ๊ทธ ๋ชฉ๋ก์ด๋ผ๊ณ ๊ฐ์ ์ ํด๋ณด๋ฉด ๋๋ต ์๋์ ๊ฐ์ ๋ฐ์ดํฐ๊ฐ ๋ฐํ๋์ผ ๋ ๊ฒ์ด๋ค. ํ์์ผ๋ จ๋ฒํธ, ํ์์์ด๋, ํ์์ด๋ฆ, ํ์์ด๋ฉ์ผ, ๊ธฐํ ํ์ ์ ๋ณด, ๊ทธ๋ฆฌ๊ณ ํด์ํ๊ทธ DB ํ ์ด๋ธ ๊ตฌ์กฐ ๐ DB ํ ์ด๋ธ์ ์๋์ ๊ฐ๋ค. ๋์ผํ ํ ์คํธ๋ฅผ ํ ์ ์๋๋ก ์คํฌ๋ฆฝํธ๋ ์ฒจ๋ถํ๋ค. script(DDL) ๋๋ณด๊ธฐ -- ํ์ ํ ์ด๋ธ CREATE TABLE `member.. IT/DataBase 2022. 11. 22. ์ด์ 1 ๋ค์