๋ณธ๋ฌธ ๋ฐ”๋กœ๊ฐ€๊ธฐ

Programming/DB

(4)
[์ฟผ๋ฆฌ ํŠœ๋‹] Oracle DB ์ฟผ๋ฆฌ ํŠœ๋‹ ํšŒ๊ณ (ft. LPAD) ์‚ฌ๋‚ด ์—…๋ฌด ์ค‘ ์šด์˜์—์„œ timeout์ด ๋‚˜๊ณ  ์žˆ๋Š” ์„œ๋น„์Šค๋ฅผ ๋ฐœ๊ฒฌํ–ˆ๋‹ค.(๋‚ด๋ถ€ ์„œ๋น„์Šค์ด๊ณ  ์ž์ฃผ ์‚ฌ์šฉํ•˜๋Š” ๊ฒƒ์ด ์•„๋‹ˆ๋ผ์„œ ๋ฐœ๊ฒฌ์ด ๋Šฆ์—ˆ๋‹ค.)(์„œ๋น„์Šค์˜ ์‹คํ–‰ ์‹œ๊ฐ„์ด 60์ดˆ ์ด์ƒ์ด๋ผ๋ฉด, timeout error๋ฅผ ๋ฑ‰๊ฒŒ ๋˜์–ด์žˆ๋‹ค.) ๋กœ๊ทธ๋ฅผ ํ™•์ธํ•ด๋ณด๋Š ์กฐํšŒ ์ฟผ๋ฆฌ์—์„œ 60์ดˆ ์ด์ƒ ๊ฑธ๋ฆฌ๋Š” ๊ฒƒ์„ ํ™•์ธํ–ˆ๋‹ค. ํ•ด๋‹น ์—…๋ฌด์˜ ํŠน์„ฑ์ƒ, ๊ณ ๊ฐ ์ด๋ ฅ ํ…Œ์ด๋ธ”์„ ์กฐํšŒํ•˜๋Š”๋ฐ ๊ฐœ๋ฐœ ํ™˜๊ฒฝ์—์„œ plan์„ ํ™•์ธํ•˜๋‹ˆ ํ…Œ์ด๋ธ”์„ full scanํ•˜๊ณ  ์žˆ์—ˆ๋‹ค.์šด์˜ ํ™˜๊ฒฝ ๊ฒฝ์šฐ, ๋” ๋งŽ์€ ๋ฐ์ดํ„ฐ๊ฐ€ ์žˆ์„ ๊ฒƒ์ด๋ฏ€๋กœ ๊ฐœ์„ ์ด ํ•„์š”ํ–ˆ๋‹ค.  ์ฟผ๋ฆฌ ์„ฑ๋Šฅ ์ €ํ•˜์˜ ์ฃผ๋œ ์›์ธ์€ "LAPD์˜ ์‚ฌ์šฉ"ํƒ€๊ฒŸ ํ…Œ์ด๋ธ”์€ ๊ณ ๊ฐ ์ด๋ ฅ์„ ๊ด€๋ฆฌํ•˜๋Š” ํ…Œ์ด๋ธ”์ด์—ˆ๊ธฐ์— ๋Œ€์šฉ๋Ÿ‰ ๋ฐ์ดํ„ฐ๋ฅผ ๊ฐ€์ง€๊ณ  ์žˆ๋Š”๋ฐ LPAD๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ์ขŒ๋ณ€์„ ๋ชจ๋‘ ๊ฐ€๊ณตํ•˜๋ฏ€๋กœ์จ, ์ธ๋ฑ์Šค ์‚ฌ์šฉ์ด ๋ถˆ๊ฐ€๋Šฅํ–ˆ๋‹ค. ํŠน์ • ๊ธฐ๊ฐ„์„ ์กฐ๊ฑด์œผ๋กœ ๊ฑธ๊ณ ์žˆ์—ˆ๋Š”..
[MySQL] JOIN ๋ฌธ๋ฒ•, left join, left outer join, inner join ์œ„ ์‚ฌ์ง„์˜ ์ถœ์ฒ˜: https://yoo-hyeok.tistory.com/98 SQL join ๋ฌธ์ด ๊ฐ€์žฅ ์ž˜ ์ •๋ฆฌ ๋˜์–ด ์žˆ๋Š” ๊ทธ๋ฆผ์ธ ๊ฒƒ ๊ฐ™์Šต๋‹ˆ๋‹ค. join: ๋™์ผํ•œ column์„ ๊ธฐ์ค€์œผ๋กœ ํ…Œ์ด๋ธ”์„ ํ•˜๋‚˜๋กœ ํ•ฉ์นฉ๋‹ˆ๋‹ค. left(right) join ๊ณผ left(right) outer join์˜ ์ฐจ์ด์  ์‹คํ–‰ ๊ฒฐ๊ณผ๋Š” ๋™์ผ ํ•ฉ๋‹ˆ๋‹ค. left join์˜ ๊ฒฝ์šฐ ๋™์ผํ•œ column์œผ๋กœ ํ•˜๋‚˜๋กœ ํ•ฉ์ณ์ง€๊ณ  left ์ชฝ(A)์˜ ๋ชจ๋“  ๋ฐ์ดํ„ฐ๋ฅผ ํฌํ•จํ•˜๊ณ  B์˜ ๋ฐ์ดํ„ฐ๋Š” null๋กœ ํ‘œ์‹œ ๋ฉ๋‹ˆ๋‹ค. A ํ…Œ์ด๋ธ” id name 1 1 aaa 2 2 AAA B ํ…Œ์ด๋ธ” id name 1 2 AAA 2 3 bbb left join ๊ฒฐ๊ณผ A left join B id name id name 1 1 aaa null null 2 2 AAA 2 AAA ..
postgresql Homebrew๋กœ ์„ค์น˜๋ถ€ํ„ฐ DBeaver ์—ฐ๊ฒฐ๊นŒ์ง€ ํŒจํ‚ค์ง€ ์„ค์น˜ ๋„๊ตฌ์ธ homebrew๋ฅผ ์ด์šฉํ•ด์„œ postgresql์„ ์„ค์น˜ํ•˜๊ณ  DBMS ๋„๊ตฌ์ธ DBeaver์— ์—ฐ๊ฒฐํ•˜๋Š” ๊ฒƒ๊นŒ์ง€ ์ •๋ฆฌํ•ด ๋ณด๊ฒ ์Šต๋‹ˆ๋‹ค. Homebrew๋‚˜ DBeaver๋ฅผ ์„ค์น˜ํ•˜๋Š” ๋ถ€๋ถ„์€ ์ƒ๋žตํ•ฉ๋‹ˆ๋‹ค. โ˜๏ธhomebrew๋กœ postgresql ์„ค์น˜ํ•˜๊ธฐ 1. ํ„ฐ๋ฏธ๋„์— ์ ‘์†ํ•ฉ๋‹ˆ๋‹ค. 2. ๋ฒ„์ „ ํ™•์ธํ•˜๊ธฐ brew search postgresql ์œ„ ๋ช…๋ น์–ด๋ฅผ ์ž…๋ ฅํ•˜๋ฉด homebrew์—์„œ ์„ค์น˜ ๊ฐ€๋Šฅํ•œ postgresql์˜ ๋ฒ„์ ผ์„ ํ™•์ธํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. @ ๋’ค์— ์žˆ๋Š” ์ˆซ์ž๊ฐ€ ๋ฒ„์ „์„ ์˜๋ฏธํ•ฉ๋‹ˆ๋‹ค. 3. ์„ค์น˜ํ•˜๊ธฐ brew install postgresql ์œ„ ๋ช…๋ น์–ด๋ฅผ ์ž…๋ ฅํ•˜๋ฉด ์ตœ์‹  ๋ฒ„์ „์˜ posrgresql์„ ์„ค์น˜ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๋งŒ์•ฝ, ํŠน์ • ๋ฒ„์ „์„ ์„ค์น˜ํ•˜๊ณ  ์‹ถ๋‹ค๋ฉด, @๊นŒ์ง€ ํฌํ•จํ•œ ์ „์ฒด ์ด๋ฆ„์„ ์ ์–ด์ฃผ๋ฉด ๋ฉ๋‹ˆ๋‹ค. ex)..
[DBeaver / MySQL] ๋ฌดํ•œ ๋กœ๋”ฉ ํ•ด๊ฒฐ DBeaver / MySQL ๋ฌดํ•œ ๋กœ๋”ฉ ํ•ด๊ฒฐ๋ฒ• ์ตœ๊ทผ ํŒ€์›๋“ค๊ณผ ์ง„ํ–‰ํ•˜๋Š” ๊ฐœ์ธ ํ”„๋กœ์ ํŠธ์—์„œ DB์กฐ์ž‘์„ ํ•˜๋Š”๊ฒฝ์šฐ๊ฐ€ ๋งŽ๋‹ค๋ณด๋‹ˆ DBeaver๊ฐ€ ๋ฌดํ•œ๋กœ๋”ฉ์ด ๊ฑธ๋ฆฌ๋Š” ๊ฒฝ์šฐ๋ฅผ ์ข…์ข… ๋ชฉ๊ฒฉํ•˜๊ฒŒ ๋์Šต๋‹ˆ๋‹ค. ๋ณดํ†ต ์ฟผ๋ฆฌ๋ฌธ์˜ ์š”๋ฅ˜๋‚˜ ์™ธ๋ถ€์š”์ธ์— ์˜ํ•ด์„œ ์ •์ƒ ์ข…๋ฃŒ๋˜์ง€ ์•Š์€ ์ƒํƒœ์—์„œ ๋‹ค๋ฅธ ๊ณณ์—์„œ SQL๋ช…๋ น์„ ์‹คํ–‰ํ–ˆ๊ธฐ์— DBeaver๊ฐ€ ์ด๋ฅผ ์ธ์‹ํ•˜์ง€ ๋ชปํ•˜๊ณ  ๊ณ„์† ์‹คํ–‰์„ ์š”์ฒญํ•˜๋‹ค๊ฐ€ ๋ฌดํ•œ ๋กœ๋”ฉ์ด ๊ฑธ๋ฆฌ๋Š” ๊ฒฝ์šฐ ์˜€์Šต๋‹ˆ๋‹ค. ์˜ˆ์‹œ, โ“โ” Java ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์„ ํ†ตํ•ด query ์‹คํ–‰ -> ์˜ค๋ฅ˜ -> "DB ๋Œ€๊ธฐ ์ค‘" DBeaver๋ฅผ ํ†ตํ•ด query ์‹คํ–‰ -> "DB ๋Œ€๊ธฐ ์ค‘"์ด ๋๋‚ ๋•Œ ๊นŒ์ง€ ๊ธฐ๋‹ค๋ฆผ... -> ๋ฌดํ•œ ๋กœ๋”ฉ ์ด๋Ÿฐ ๋ชจ์Šต ํ˜น์€ ๋ฐ˜๋Œ€์˜ ๊ฒฝ์šฐ์ž…๋‹ˆ๋‹ค. ๊ฐ€์žฅ ๊ฐ„๋‹จํ•œ ํ•ด๊ฒฐ๋ฒ•์€ ์‚ฌ์šฉํ•˜๋Š” DB ์ €์˜ ๊ฒฝ์šฐ MySQL ์„œ๋น„์Šค๋ฅผ ์žฌ์‹œ์ž‘ํ•˜๋Š” ๊ฒƒ (๊ฐœ์ธ ํ”„๋กœ์ ํŠธ๋‚˜..

728x90