IT/DataBase59 [Oracle] ๋ฌ๋ ฅ ๋ง๋ค๊ธฐ WITH first_day AS ( SELECT TRUNC(SYSDATE,'MM') AS first_day FROM dual ),cal AS ( SELECT TO_CHAR(first_day + LEVEL -1,'D') ์์ผ_์ซ์ , TO_CHAR(first_day + LEVEL -1,'MM-DD') ์์ผ , TO_CHAR(first_day + LEVEL -1,'IW') ์ฃผ์ฐจ FROM first_day CONNECT BY first_day + LEVEL -1 IT/DataBase 2023. 4. 1. [SQL] update์์ case when์ ์ฌ์ฉ update์์ case when์ ๋ก ์กฐ๊ฑด์ ๋ง๊ฒ ์์ ์๋์ฒ๋ผ temp_user ํ ์ด๋ธ์ ๋ฐ์ดํฐ๊ฐ ๋ค์ด ์๋ค. ์๋์ฒ๋ผ update๋ฌธ์ ์คํํ๋ฉด ์กฐ๊ฑด์ ๋ง๊ฒ ์์ ๋๋ค. update temp_user set user_name = case when user_seq = 1 then '์' when user_seq = 2 then 'ํผ' when user_seq = 3 then '๊ทธ' when user_seq = 4 then '๋' when user_seq = 5 then '์กฐ' when user_seq = 6 then '๋' when user_seq = 7 then '๋ง' when user_seq = 8 then '์ฌ' when user_seq = 9 then '๋ผ' end ; ๊ฒฐ๊ณผ๊ฐ IT/DataBase 2023. 3. 4. [Oracle]ORACLE ๊ณ์ธตํ ์ฟผ๋ฆฌ ๋ชฉ์ฐจ ํ ์ด๋ธ์ ๊ณ์ธตํ ๋ฐ์ดํฐ๊ฐ ์กด์ฌํ ๊ฒฝ์ฐ ์ฌ์ฉ(์กฐ์ง, ์ฌ์, ๋ฉ๋ด๋ฑ์ ์ํ๊ด๊ณ ๋ฑ์ ์ฌ์ฉ๋จ) SELECT ... [ CONNECT_BY_ISLEAF ISLEAF FROM ํ ์ด๋ธ๋ช START WITH condition CONNECT BY PRIOR condition AND condition; -- START WITH์ | ๊ณ์ธต๊ตฌ์กฐ ์ ๊ฐ์ ์์ ์์น๋ฅผ ์ง์ ํ๋ ๊ตฌ๋ฌธ -- CONNECT BY ์ | ๋ค์์ ์ ๊ฐ๋ ์์ ๋ฐ์ดํฐ๋ฅผ ์ง์ ํ๋ ๊ตฌ๋ฌธ ----------------------------------------------------------------- -- ๊ณ์ธตํ์ฟผ๋ฆฌ ------------------------------------------------------------------ --PRIOR ์.. IT/DataBase 2022. 11. 29. [Oracle]ORACLE 12C SQL์ ์ถ๊ฐ๋ ์๋ก์ด ๊ธฐ๋ฅ ๋ชฉ์ฐจ DEFALUT VALUE๋ก sequence์ next value ์ง์ ๊ฐ๋ฅ 12c ์ด์ ์ ์ค๋ผํด์์๋ ์๋ ์ฆ๊ฐ๊ฐ์ ์ค์ ํ๊ธฐ ์ํด ์ํ์ค๋ฅผ ์์ฑ ํ ํ ํ ์ด๋ธ์ ๋ง๋ค ๋๋ถํฐ ์์ฑํ ์ํ์ค์ ๊ฐ์ ์ค์ ํ ์ ์์ -- ex) 12c์์๋ ์๋์ฒ๋ผ ์ํ์ค๋ฅผ ์์ฑ ํ CREATE SEQUENCE t_seq start with 1 increment by 1 maxvalue 10 nocycle ; -- ํ ์ด๋ธ์ ๋ง๋ค ๋ ์ํ์ค์ next value ์ง์ ์ด ๊ฐ๋ฅํจ CREATE TALBE test ( no NUMBER DEFAULT t_seq.nextval PRIMARY KEY, name varchar2(10) ); invisible columne ์ฌ์ฉ ๊ฐ๋ฅ 11g๊น์ง๋ ํ ์ด๋ธ์ invisible columne.. IT/DataBase 2022. 11. 29. [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. [Oracle] Oracle ์ํ์ค ์์ฑ ์ฟผ๋ฆฌ ๋ชฉ์ฐจ Oracle ์ํ์ค ์์ฑ ์ฟผ๋ฆฌ๐ SELECT 'CREATE SEQUENCE ' || sequence_owner || '.' || sequence_name || ' INCREMENT BY ' || increment_by || ' START WITH ' || last_number || ' MAXVALUE ' || max_value || ' MINVALUE ' || min_value || CASE WHEN cycle_flag = 'N' THEN ' NO' ELSE ' ' END || 'CYCLE ' || CASE WHEN cache_size = 0 THEN 'NOCACHE' ELSE 'CACHE ' || cache_size END || CASE WHEN order_flag = 'N' THEN ' NO' .. IT/DataBase 2022. 11. 29. [Oracle] Oracle SELECTํ ๊ฐ์ผ๋ก UPDATEํ๊ธฐ ๋ชฉ์ฐจ Oracle SELECTํ ๊ฐ์ผ๋ก UPDATEํ๊ธฐ๐ถ ์์ฃผ ์ฐ๋ ๊ธฐ๋ฅ์ธ๋ฐ ์ญ์ ๊ธฐ๋ก์ ์ํ๋ฉด ๊น๋จน๋๋ค. ์๋์ฒ๋ผ ์๋ธ์ฟผ๋ฆฌ์ ์กฐ์ธ์ ํ์ฉํด์ UPDATEํ๋ฉด ๋๋ค. UPDATE STUDENT A SET JUMIN = ( SELECT jumin FROM STUDENT_220514 B WHERE A.studno = B.STUDNO ) ; studentํ ์ด๋ธ์ studno์ student_220514 ํ ์ด๋ธ์ studno๋ก ์กฐ์ธ ํ student_220514์ jumin์ ๊ฐ์ ธ์์ ๊ทธ jumin์ผ๋ก student ํ ์ด๋ธ์ jumin์ปฌ๋ผ๊ฐ์ UPDATE ์ฐธ์กฐ : ์ฝ๋ฉํฉํ ๋ฆฌ๋ ๋ธ๋ก๊ทธ, 2019.01.09, https://coding-factory.tistory.com/291 [Oracle] ์ค๋ผํด SELECTํ.. IT/DataBase 2022. 11. 29. [Oracle] Oracle ํน์ ์๋ฆฟ์๋ง ์ ๋ฐ์ดํธ(feat. update + substr) ๋ชฉ์ฐจ Oracle ํน์ ์๋ฆฟ์๋ง ์ ๋ฐ์ดํธ๐ ์๋ STUDENT ํ ์ด๋ธ์ด ์๋ค. ์ฌ๊ธฐ์ ๊ฐ์ธ์ ๋ณด ๋ณดํธ ์ฐจ์์์ JUMIN์ปฌ๋ผ์ 7๋ฒ ์งธ๋ถํฐ '1234567'๋ก UPDATE ํ๋ ค๊ณ ํ๋ค. ์๋์ฒ๋ผ UPDATE SQL์ ์คํํ๋ฉด ๋๋ค. UPDATE STUDENT SET JUMIN = SUBSTR(JUMIN,1,6) || '1234567' ; substr๋ก 1~6๋ฒ์ง๊ฐ์ ๊ทธ๋๋ก ๊ฐ์ ธ์ค๊ณ ||๋ก '1234567'์ ๋ถ์ฌ์ updateํจ ๊ฒฐ๊ณผ๊ฐ ๋ค์ํ๊ฒ ์์ฉ์ด ๊ฐ๋ฅํ ๋ฏ ์ถ๋ค, ๋ด๊ฐ ์์ง ์๊ธฐ ์ํด ๋ฉ๋ชจ ์ฐธ์กฐ : https://community.oracle.com/tech/developers/discussion/2338069/how-do-i-update-the-substring-of-a-string-value IT/DataBase 2022. 11. 29. [Oracle]ORACLE SYNOSYM(์๋ ธ๋-๋์์ด) ๋ชฉ์ฐจ ์ฌ๋๋ ์น๊ตฌ์ ๋ณ๋ช ์ ๋ถ๋ฅด๋ฏ ์ค๋ผํด์์๋ ํ ์ด๋ธ์ ๋ณ๋ช ์ ๋ถ์ผ ์ ๊ฐ ์๋๋ฐ ์ด ๋ณ๋ช ์ ๋ถ์ด๋ ๊ธฐ๋ฅ์ ์๋ ธ๋์ด๋ผ๊ณ ํจ ์๋ ธ๋์ ์ฌ์ฉํ๋ ๋ชฉ์ ์ ๋ณด์์ด๋ ์ฌ์ฉ์์ ํธ๋ฆฌ์ฑ ๋๋ฌธ์ -- ์์ฑ ๋ฌธ๋ฒ CREATE [PUBLIC] SYNONYM synonym_name FOR [schema.] ๋์๊ฐ์ฒด; ์ข ๋ฅ๋ Private Synonym๊ณผ public Synonym์ด ์๊ณ private synonym์ ๋ง๋ ์ฌ์ฉ์๋ง ์ฌ์ฉํ ์ ์๋ synonym์ ๋๋ถ๋ถ์ synonym์ ํ๋ก์ ํธ์ ์ฐธ์ฌํ ๋ง์ ์ฌ๋๋ค์ด ๋ค ๋ณผ ์ ์๋๋ก ๋ง๋๋ ๊ฒ์ด ์ข์๋ฐ ์ด ๋ ์ฌ์ฉํ๋๊ฒ public synonym์ synonym์ ์์ฑํ๋ ค๋ฉด CREATE [PUBLIC] SYNONYM์ด๋ ๊ถํ์ด ํ์ํ๋ฏ๋ก ์๋์ ๊ฐ์ด ๊ถํ์ ๋จผ์ ํ ๋น ํด.. IT/DataBase 2022. 11. 29. [Oracle]ORACLE DELETE, TRUNCATE, DROP ์ฐจ์ด ๋ชฉ์ฐจ delete๋ ๋ฐ์ดํฐ๋ง ์ง์์ง๊ณ ์ฌ์ฉ์ค์ธ ๋์คํฌ์์ ๊ณต๊ฐ์ ์ ์ง, TRUNCATE๋ CREATE TABLE๋ก ํ ์ด๋ธ์ ๋ง๋ค์๋ ์ํ(๋ฐ์ดํฐ๊ฐ 1๋ ์์)๋ก ๋ชจ๋ ๋ฐ์ดํฐ๋ฅผ ์ญ์ ํ๊ณ ์ปฌ๋ผ๋ง ๋จ๊ฒจ๋์, ์ฌ์ฉ์ค์ธ ๋์คํฌ ๊ณต๊ฐ๋ ์ฌ๋ผ์ง, DROP์ ์ ์ผ ์ํํ ๋ช ๋ น์ด์ด๊ณ ๋ฐ์ดํฐ์ ํ ์ด๋ธ ์ ์ฒด๋ฅผ ์ญ์ ํจ(์ฌ์ฉ์ค์ธ ๊ณต๊ฐ, ์ธ๋ฑ์ค, ์ ์ฝ์กฐ๊ฑด๋ฑ ์ ๋ถ ์ญ์ ๋จ) DELETE ๋ฌธ๋ฒ์ ์ฝ์ง๋ง DELETE๋ฌธ์ ๋ฐ์ดํฐ๋ฅผ ์ญ์ ํ๋ค๊ณ ์๊ณ ์์ง๋ง ์ฌ์ค ๋ฐ์ดํฐ๋ ์ญ์ ๋์ง ์๊ณ ํด๋น ๋ธ๋ก์ ๊ทธ๋๋ก ๋จ์ ์๊ณ BBED๊ฐ์ ํด์ ์ด์ฉํ๋ฉด DELETE๋ ๋ฐ์ดํฐ๋ ์ ๋ถ ๋ณต๊ตฌ ๊ฐ๋ฅํ๋ค๊ณ ํจ ๊ทธ๋์ DELETE๋ฅผ ํ ํ์ ํ ์ด๋ธ์ ํฌ๊ธฐ๋ฅผ ํ์ธํด ๋ณด๋ฉด ํฌ๊ธฐ๊ฐ ์ค์ด๋ค์ง ์๊ณ ๊ทธ๋๋ก์ ์๋ฅผ ๋ค์ด, 100๋ง๊ฑด ๋ฐ์ดํฐ๊ฐ ์๋ ํ ์ด๋ธ์ ์ฉ๋์ด 100MB์.. IT/DataBase 2022. 11. 29. ์ด์ 1 2 3 4 5 6 ๋ค์