๊ด€๋ฆฌ ๋ฉ”๋‰ด

๋ชฉ๋กfull stack (143)

JiYoung Dev ๐Ÿ–ฅ

[database ๊ณ ๊ธ‰] ์ง‘ํ•ฉ์—ฐ์‚ฐ์ž (2023.08.08)

UNION : ์ค‘๋ณต ์ œ๊ฑฐ UNION ALL : ์ค‘๋ณต ํฌํ•จ ํŠน์ง•1. ์ปฌ๋Ÿผ์€ ์ฒซ๋ฒˆ์งธ ์ปฌ๋Ÿผ์„ ๋”ฐ๋ผ๊ฐ„๋‹ค. SELECT ์˜ˆ๋งค๋ฒˆํ˜ธ, ๋ฎค์ง€์ปฌ์ด๋ฆ„, ๋ฎค์ง€์ปฌ๊ฐ€๊ฒฉ FROM ๋ฎค์ง€์ปฌ์˜ˆ๋งค๋‚ด์—ญ UNION ALL SELECT ์˜ˆ๋งค๋ฒˆํ˜ธ, ์ฝ˜์„œํŠธ์ด๋ฆ„, ์ฝ˜์„œํŠธ๊ฐ€๊ฒฉ FROM ์ฝ˜์„œํŠธ์˜ˆ๋งค๋‚ด์—ญ UNION ALL SELECT ์˜ˆ๋งค๋ฒˆํ˜ธ, ๊ทน์ด๋ฆ„, ๊ทน๊ฐ€๊ฒฉ FROM ๊ทน์žฅ์˜ˆ๋งค๋‚ด์—ญ ; ํŠน์ง• 2. ์ปฌ๋Ÿผ์˜ ๊ฐœ์ˆ˜์™€ ์ž๋ฃŒํ˜•์ด ์ผ์น˜ํ•ด์•ผ ํ•จ! ์ง์ ‘ ๋ฌธ์žํ˜•์ด๋‚˜ NULL๊ฐ’์„ ์ง€์ •ํ•˜์—ฌ ํ•ด๋‹น ์ปฌ๋Ÿผ์„ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋‹ค. oracle ๋ฒ„์ „์— ๋”ฐ๋ฅธ ์ฐจ์ด ์ค‘๋ณต์ œ๊ฑฐ + ์ •๋ ฌ = union ์ค‘๋ณต x + ์ •๋ ฌ x = union all (๊ณต๊ณต๊ธฐ๊ด€ ๋“ฑ์—์„œ ๊ฐ€์žฅ ๋งŽ์ด ์“ฐ๋Š” ๋ฒ„์ „) union = ์ค‘๋ณต union all = ์ค‘๋ณตx ๊ฐ€์žฅ ์ตœ์‹  ๋ฒ„์ „์ด๋‚˜ ์ž˜๋ชป ์—…๊ทธ๋ ˆ์ด๋“œํ–ˆ๋‹ค๊ฐ€ ๊ธฐ์กด๊ฒŒ ์ž‘๋™์•ˆํ•  ์ˆ˜ ์žˆ์Œ

full stack/database 2023. 8. 8. 17:43
[Linux] ํŽธ์ง‘๊ธฐ & ๊ถŒํ•œ์„ค์ • (2023.08.08)

======================= -- Linux 4์žฅ ํŽธ์ง‘๊ธฐ ========================= vi ํŒŒ์ผ๋ช… ํŽธ์ง‘์ƒํƒœ ์ด๋™ a, i, o, O a: ์ปค์ €์˜ ๋’ค์ชฝ์— ์‚ฝ์ž… i: ์ปค์ €์˜ ์•ž์ชฝ์— ์‚ฝ์ž… o: ์ปค์ €์˜ ์•„๋ž˜์ชฝ์— ์‚ฝ์ž… O: ์ปค์ €์˜ ์œ„์ชฝ์— ์‚ฝ์ž… :wq - ์ €์žฅํ•˜๊ณ  ์ข…๋ฃŒํ•˜๊ธฐ :q! - ํŽธ์ง‘๋ฌธ์„œ ๋ฒ„๋ฆฌ๊ณ  ์ข…๋ฃŒํ•˜๊ธฐ ๋ช…๋ น๋ชจ๋“œ [n]r : ํ•œ ๋ฌธ์ž(char) ์ˆ˜์ • [n]dd : [n]์ค„ ์‚ญ์ œ [n]x : [n]๋ฌธ์ž๋ฅผ ์‚ญ์ œ [n]yy : [n]์ค„์„ ๋ณต์‚ฌ p : ๋ณต์‚ฌํ•œ ์ค„์„ ๋ถ™์—ฌ๋„ฃ๊ธฐ cw : ๋‹จ์–ด๋ฅผ ์ˆ˜์ • gg : ๋ฌธ์„œ์˜ ์ฒ˜์Œ์œผ๋กœ ๊ฐ€๊ธฐ G : ๋ฌธ์„œ์˜ ๋งˆ์ง€๋ง‰์œผ๋กœ ๊ฐ€๊ธฐ G ๋ผ์ธ๋ชจ๋“œ /๋ฌธ์ž์—ด -> ๋ฌธ์ž์—ด์— ์ปค์ €์ด๋™ :u -> ์ง์ „์ž‘์—… ์ทจ์†Œ :e! -> ํ˜„์žฌ ํŽธ์ง‘๋ฌธ์„œ ๋ฒ„๋ฆฌ๊ณ , ์ตœ์ดˆ ๋ฌธ์„œ๋กœ ๋‹ค์‹œ์ฝ์–ด์˜ค๊ธฐ.. ..

full stack/Linux 2023. 8. 8. 12:36
[Linux] ๊ธฐ๋ณธ ๋ช…๋ น์–ด (2023.08.07)

์‰˜ : ๋Œ€ํ™”ํ˜• ์ธํ„ฐํŽ˜์ด์Šค → ๋ช…๋ น์–ด ์‚ฌ์šฉ์ž์™€ ์šด์˜์ฒด์ œ ์ปค๋„ ์‚ฌ์ด์˜ ์ธํ„ฐํŽ˜์ด์Šค๋ฅผ ๊ฐ์‹ธ๋Š” ์ธต ์‚ฌ์šฉ์ž๊ฐ€ ์ž…๋ ฅํ•˜๋Š” ๋ช…๋ น์–ด๋ฅผ ์ž…๋ ฅํ•˜๊ณ  ์‹คํ–‰ํ•˜๋Š” ์—ญํ•  ์‚ฌ์šฉ์ž์™€ ์ปค๋„์˜ ์˜์‚ฌ์†Œํ†ต์„ ๋‹ด๋‹น ์ž‘์—… ๋””๋ ‰ํ† ๋ฆฌ ์‚ฌ์šฉ์ž๊ฐ€ ๋ฆฌ๋ˆ…์Šค ์‹œ์Šคํ…œ์— ์ ‘์†ํ•˜์—ฌ ํ˜„์žฌ ์‚ฌ์šฉํ•˜๊ณ  ์žˆ๋Š” ๋””๋ ‰ํ† ๋ฆฌ ํ™ˆ ๋””๋ ‰ํ† ๋ฆฌ ๊ฐ ์‚ฌ์šฉ์ž์—๊ฒŒ ํ• ๋‹น๋˜๋Š” ๋””๋ ‰ํ† ๋ฆฌ ์‚ฌ์šฉ์ž ๊ณ„์ •์„ ์ฒ˜์Œ ๋งŒ๋“ค๋•Œ ์ง€์ • ์ ˆ๋Œ€๊ฒฝ๋กœ ๋ฃจํŠธ๋กœ ๋ถ€ํ„ฐ ์‹œ์ž‘ Ping Test ๋„คํŠธ์›Œํฌ ์ƒ์— ์žˆ๋Š” ๊ฐ๊ฐ์˜ ํ˜ธ์ŠคํŠธ๊ฐ„ ํ†ต์‹ ์ด ์‚ด์•„์žˆ๋Š”์ง€, ์†๋„๊ฐ€ ์–ผ๋งˆ๋‚˜ ๋‚˜์˜ค๋Š”์ง€ ํ™•์ธํ•˜๊ธฐ ์œ„ํ•œ ์ž‘์—… -- ping test C:\Users\smhrd> ping raspberrypi.local C:\Users\smhrd> ping 221.156.60.77 221.156.60.77์˜ ์‘๋‹ต: ๋ฐ”์ดํŠธ=32 ์‹œ๊ฐ„=2ms TTL=63 221.156.6..

full stack/Linux 2023. 8. 7. 13:45
[Android] ์Šค๋ ˆ๋“œ(Thread) & ํ•ธ๋“ค๋Ÿฌ(Handler) (2023.07.27)

Thread ํ์— ์Šค๋ ˆ๋“œ ์ €์žฅ ์ปดํ“จํ„ฐ ์ž‘์—…์€ CPU๊ฐ€ ํ•จ. CPU๋Š” ํ•œ๋ฒˆ์— ํ•˜๋‚˜์˜ ์ผ์ฒ˜๋ฆฌ๋ฅผ ํ•จ ์ž‘์—… ์Šค์ผ€์ฅด๋ง์„ ํ†ตํ•ด ๋ฉ€ํ‹ฐ ์Šค๋ ˆ๋“œ๋ฅผ ๊ฐ€๋Šฅํ•˜๊ฒŒ ํ•จ → ์‹œ๋ถ„ํ•  ์‹œ์Šคํ…œ ์Šค๋ ˆ๋“œ ๋ผ์ดํ”„์‚ฌ์ดํด (์Šค๋ ˆ๋“œ ์ƒ๋ช…์ฃผ๊ธฐ) ์ฒซ๋ฒˆ์งธ ์Šค๋ ˆ๋“œ๋Š” ๋‘๋ฒˆ์งธ ์Šค๋ ˆ๋“œ์—๊ฒŒ ์–‘๋ณด : yeild ๋‘๋ฒˆ์งธ ์Šค๋ ˆ๋“œ๋Š” ์ฒซ๋ฒˆ์งธ ์Šค๋ ˆ๋“œ์˜ cpu๋Š” ๊ฐ€๋กœ์ฑ” : interupt start(), run(), yeild(), interupt(), sleep() ๋“ฑ์˜ ๋ฉ”์„œ๋“œ๋กœ ๊ตฌํ˜„์ด ๋˜์–ด ์žˆ์Œ ์Šค๋ ˆ๋“œ1 ์‹œ์ž‘ ํ›„ ๋‹ค์‹œ ์‹คํ–‰๋  ๋•Œ๋Š” run() ์ƒํƒœ๋กœ ์‹คํ–‰๋จ(๋‹ค์‹œ start() X) Handler ์•ˆ๋“œ๋กœ์ด๋“œ์—์„œ ์“ฐ๋ ˆ๋“œ๋ฅผ ์‚ฌ์šฉํ•˜๊ธฐ ์œ„ํ•ด์„œ๋Š” Handler๊ฐ€ ํ•„์š”ํ•จ ์•ˆ๋“œ๋กœ์ด๋“œ ์–ดํ”Œ์„ ์‹คํ–‰์‹œํ‚ค๋ฉด Task๊ฐ€ ์ƒ์„ฑ๋˜๊ณ  ๊ทธ ์•ˆ์— activity๋“ค์ด ์Œ“์ด๋Š” ๊ตฌ์กฐ ์•ˆ๋“œ๋กœ์ด๋“œ๋Š” ์–ดํ”Œ์„ ์—ฌ๋Ÿฌ..