Banner

My Tech Blog (ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค)

๐Ÿ“‘ 1. ๋ฌธ์ œ์„ค๋ช…๐Ÿ’ก 2. ์ ‘๊ทผ๋ฐฉ์‹์ด ๋ฌธ์ œ ํ•ต์‹ฌ์€ ์กฐ๊ฑด์— ๋”ฐ๋ผ์„œ STATUS ๋ผ๋Š” ์ปฌ๋Ÿผ์— ๋‹ค๋ฅธ ๊ฒฐ๊ณผ๊ฐ’์„ ๋ณด์—ฌ์ฃผ๋Š” ๊ฒƒ์ด๋‹ค์ž๋ฐ”์—์„œ ์กฐ๊ฑด๋ฌธ์œผ๋กœ IF๋‚˜ CASE๋ฌธ ์“ฐ๋Š” ๊ฒƒ์ฒ˜๋Ÿผ MySQL ์—์„œ๋Š” SELECT ์ ˆ์— CASE ๋ฌธ์„ ์จ ์ค„ ์ˆ˜ ์žˆ๋‹ค.CASE WHEN ์ปฌ๋Ÿผ๋ช… = '์กฐ๊ฑด' THEN '๊ฒฐ๊ณผ๊ฐ’' ํ•ด ์ฃผ๋ฉด ์กฐ๊ฑด์— ๋”ฐ๋ผ ๋‹ค๋ฅธ ๊ฒฐ๊ณผ๊ฐ€ ๋„์ถœ๋œ๋‹ค.๊ทธ๋ฆฌ๊ณ  CASE ๋ฌธ์„ ๋๋‚ผ ๋•Œ๋Š” END AS ๋ณ„์นญ์„ ์‚ฌ์šฉํ•œ๋‹ค ๋งŒ์•ฝ์— ๋‚˜์—ดํ•œ ์กฐ๊ฑด์— ํ•ด๋‹นํ•˜์ง€ ์•Š๋Š” ๊ฒฝ์šฐ์˜ ๊ธฐ๋ณธ ๊ฐ’์„ ์ฃผ๊ณ  ์‹ถ๋‹ค๋ฉด WHEN ๋Œ€์‹  ELSE ์ ˆ์— ๊ธฐ๋ณธ๊ฐ’์„ ์„ธํŒ…ํ•ด ์ฃผ๋ฉด ๋œ๋‹ค. โญ 3. ์ •๋‹ต์ฝ”๋“œ๊ณ„์† ํ‹€๋ ค์„œ ์ถœ๋ ฅ์€ ์ž˜ ๋˜๋Š”๋ฐ ์™œ ํ‹€๋ฆฌ๋‚˜ ํ–ˆ๋”๋‹ˆ MySQL ์—์„œ ๊ธฐ๋ณธ๊ฐ’์€ ์˜ค๋ฆ„์ฐจ์ˆœ์ด์—ˆ๋‹ค์ฒ˜์Œ์— ๋‚ด๋ฆผ์ฐจ์ˆœ์ด ๊ธฐ๋ณธ๊ฐ’์ด๋ผ ์ƒ๊ฐํ•˜๊ณ  ์ƒ๋žตํ–ˆ์ŒORDER BY BOARD_ID;๋งŒ ์ผ๋”๋‹ˆ ๊ณ„..
๐Ÿ“‘ 1. ๋ฌธ์ œ์„ค๋ช…๐Ÿ’ก 2. ์ ‘๊ทผ๋ฐฉ์‹WHERE์ ˆ์ด๋ž‘ HAVING ์ ˆ ์“ฐ์ž„์ด ๋„ˆ๋ฌด๋„ˆ๋ฌด ํ—ท๊ฐˆ๋ฆฐ๋‹ค.  ์™œ HAVING์„ ์‚ฌ์šฉํ•˜๋Š”๊ฐ€? ์ด ๋ฌธ์ œ์—์„œ๋Š” ํ‰๊ท  ๋Œ€์—ฌ ๊ธฐ๊ฐ„(AVG)์„ ๊ณ„์‚ฐํ•œ ํ›„ ํ•ด๋‹น ๊ฐ’์ด 7 ์ด์ƒ์ธ ๊ทธ๋ฃน๋งŒ ํ•„ํ„ฐ๋งํ•ด์•ผ ํ•œ๋‹ค.ํ‰๊ท ์„ ๊ณ„์‚ฐํ•˜๋ ค๋ฉด ๋จผ์ € CAR_ID ๋ณ„๋กœ ๊ทธ๋ฃนํ™”๋ฅผ ํ•ด์•ผํ•œ๋‹ค.์ดํ›„์— ์กฐ๊ฑด์„ ์ ์šฉํ•  ์ˆ˜ ์žˆ๋Š” ์ ˆ์ด ๋ฐ”๋กœ HAVING์ด๋‹ค.์ฆ‰, WHERE ์ ˆ๋กœ๋Š” ๊ทธ๋ฃนํ™” ์ดํ›„์˜ ์ง‘๊ณ„ ๊ฒฐ๊ณผ๋ฅผ ํ•„ํ„ฐ๋งํ•  ์ˆ˜ ์—†๊ธฐ ๋•Œ๋ฌธ์— ๋ฐ˜๋“œ์‹œ HAVING์„ ์‚ฌ์šฉํ•ด์•ผ ํ•œ๋‹ค. ์–ธ์ œ WHERE์ ˆ์„ ์จ์•ผ ํ•˜๊ณ , ์–ธ์ œ HAVING ์ ˆ์„ ์จ์•ผ ํ•˜๋Š”์ง€ ์ •๋ง ํ—ท๊ฐˆ๋ฆฐ๋‹ค.์ด๊ฑด SQL ์ฟผ๋ฆฌ๋ฌธ ์‹คํ–‰ ์ˆœ์„œ์™€ ๊ด€๋ จ์ด ์žˆ๋‹ค.FROM - WHERE - GROUP BY - HAVING - SELECT - ORDER BYHAVING์€ GROUP BY ์ดํ›„ ์‹คํ–‰..
๐Ÿ“‘ 1. ๋ฌธ์ œ์„ค๋ช…๐Ÿ’ก 2. ์ ‘๊ทผ๋ฐฉ์‹์™„์ „ํƒ์ƒ‰์€ ์•ˆ๋˜๋Š” ์ด์œ ๋ฌธ์ œ์—์„œ number≤1,000,000์œผ๋กœ ์ตœ๋Œ€ ๋ฐฑ๋งŒ์ž๋ฆฌ ์ˆซ์ž๊ฐ€ ๋  ์ˆ˜ ์žˆ๋‹ค. number ๊ฐ’์ด ๋„ˆ๋ฌด ์ปค์„œ ์™„์ „ ํƒ์ƒ‰์€ ํ˜„์‹ค์ ์œผ๋กœ ๋ถˆ๊ฐ€๋Šฅํ•˜๋‹ค. k๋Š” 1 ์ด์ƒ len(number) - 1 ์ดํ•˜์˜ˆ๋ฅผ ๋“ค์–ด, ์ˆซ์ž๊ฐ€ 1,000,000์ž๋ฆฌ๋ผ๋ฉด ์ตœ๋Œ€ 999,999๊ฐœ์˜ ์ˆซ์ž๋ฅผ ์ œ๊ฑฐํ•ด์•ผ ํ•œ๋‹ค. ์™œ ๊ทธ๋ฆฌ๋”” ์•Œ๊ณ ๋ฆฌ์ฆ˜์„ ์จ์•ผ ํ•˜๋Š”๊ฐ€?์ˆซ์ž๋ฅผ ํ•œ ๋ฒˆ๋งŒ ์ˆœํšŒํ•˜๋ฉด์„œ ์ ์ ˆํ•œ ์ˆซ์ž๋ฅผ ์„ ํƒํ•˜๊ฑฐ๋‚˜ ์ œ๊ฑฐํ•œ๋‹ค. ์ˆซ์ž๊ฐ€ ๋ฐฑ๋งŒ ์ž๋ฆฌ์—ฌ๋„ 1,000,000๋ฒˆ์˜ ๋น„๊ต๋งŒ ํ•˜๋ฉด ๋˜๊ธฐ ๋•Œ๋ฌธ์— ํšจ์œจ์ด ์ข‹๋‹ค.๋ฌธ์ œ์˜ ํ•ต์‹ฌ = '์•ž์—์„œ๋ถ€ํ„ฐ ๋’ค๋กœ ํฐ ์ˆซ์ž ์œ ์ง€'์•ž์ž๋ฆฌ๋ถ€ํ„ฐ ์ˆœ์„œ๋Œ€๋กœ ์ˆซ์ž๋ฅผ ์„ ํƒํ•˜๋ฉฐ ํฐ ์ˆซ์ž๋ฅผ ์œ ์ง€ํ•˜๋Š” ๋ฐฉ์‹์œผ๋กœ ํ’€์–ด์•ผ ํ•œ๋‹ค.๋‚˜๋Š” ์ด์ค‘ํฌ๋ฌธ์œผ๋กœ ํ’€์—ˆ๋Š”๋ฐ ๋‹ค๋ฅธ ๋ถ„๋“ค์ด ํ’€์ดํ•œ ๊ฑธ ๋ณด๋‹ˆ ์Šคํƒ์„ ์‚ฌ์šฉํ•ด ๋”..
๐Ÿ“‘ 1. ๋Œ€์†Œ๋ฌธ์ž ๋ฐ”๊ฟ”์„œ ์ถœ๋ ฅํ•˜๊ธฐimport java.util.Scanner;public class Solution { public static void main(String[] args) { Scanner sc = new Scanner(System.in); String a = sc.next(); System.out.println(swapCase(a)); } public static String swapCase(String str) { StringBuilder result = new StringBuilder(); for(char c:str.toCharArray()) { if(Character.isUpperCase(c) ) { resu..
๐Ÿ“‘ 1. ๋ฌธ์ œ์„ค๋ช…๐Ÿ’ก 2. ์ ‘๊ทผ๋ฐฉ์‹๋ฌธ์ œ์—์„œ ์ฃผ์–ด์ง„ ๋งค๊ฐœ๋ณ€์ˆ˜- ์ˆ˜์—ด์„ ๋‚˜ํƒ€๋‚ด๋Š” ์ •์ˆ˜ ๋ฐฐ์—ด `sequence`- ๋ถ€๋ถ„ ์ˆ˜์—ด์˜ ํ•ฉ์„ ๋‚˜ํƒ€๋‚ด๋Š” ์ •์ˆ˜ `k` ์กฐ๊ฑด์„ ๋งŒ์กฑํ•˜๋Š” ๋ถ€๋ถ„ ์ˆ˜์—ด์˜ ์‹œ์ž‘ ์ธ๋ฑ์Šค์™€ ๋งˆ์ง€๋ง‰ ์ธ๋ฑ์Šค๋ฅผ ๋ฐฐ์—ด๋กœ returnํ•˜๋Š” solution ํ•จ์ˆ˜๋ฅผ ์ž‘์„ฑํ•˜๋Š” ๋ฌธ์ œ ํˆฌํฌ์ธํ„ฐ, ์Šฌ๋ผ์ด๋”ฉ ์œˆ๋„์šฐ ์•Œ๊ณ ๋ฆฌ์ฆ˜์œผ๋กœ ํ‘ผ๋‹ค.- start: ์œˆ๋„์šฐ์˜ ์‹œ์ž‘ ์ธ๋ฑ์Šค- end: ์œˆ๋„์šฐ์˜ ๋ ์ธ๋ฑ์Šค (or ๋‹ค์Œ ํƒ์ƒ‰ํ•  ์œ„์น˜) `ํˆฌํฌ์ธํ„ฐ`ํ•˜๋‚˜์˜ ํฌ์ธํ„ฐ๋Š” ๋ฐฐ์—ด์˜ ์‹œ์ž‘์„, ๋‹ค๋ฅธ ํ•˜๋‚˜๋Š” ๋ฐฐ์—ด์˜ ๋์„ ๊ฐ€๋ฆฌํ‚ค๋ฉฐ ์‹œ์ž‘ํŠน์ • ์กฐ๊ฑด์„ ๋งŒ์กฑํ•˜๋Š” ๊ตฌ๊ฐ„์„ ์ฐพ๋Š”๊ฒƒ์ด๋‹ค.  `์Šฌ๋ผ์ด๋”ฉ ์œˆ๋„์šฐ ์•Œ๊ณ ๋ฆฌ์ฆ˜`๋ถ€๋ถ„ ๋ฐฐ์—ด, ๋ถ€๋ถ„ ๋ฌธ์ž์—ด ๋ฌธ์ œ์—์„œ ์ž์ฃผ ์‚ฌ์šฉ๋˜๋Š” ์•Œ๊ณ ๋ฆฌ์ฆ˜์œผ๋กœ ์กฐ๊ฑด์„ ๋งŒ์กฑํ•˜๋Š” ๊ตฌ๊ฐ„์„ ์ฐพ๊ฑฐ๋‚˜, ๊ณ ์ •๋œ ํฌ๊ธฐ ๊ตฌ๊ฐ„์˜ ํ•ฉ๊ณ„, ์ตœ๋Œ€๊ฐ’, ์ตœ์†Œ๊ฐ’ ๋“ฑ์„ ๊ตฌํ•  ๋•Œ ์œ ..
๐Ÿ“‘ 1. ๋ฌธ์ œ์„ค๋ช…๐Ÿ’ก 2. ์ ‘๊ทผ๋ฐฉ์‹ ์กฐ์ด์Šคํ‹ฑ์„ ์–‘ ์˜†์œผ๋กœ ์ด๋™ํ•˜๋Š” ์ขŒ์šฐ ์ด๋™ ํšŸ์ˆ˜(move) ์กฐ์ด์Šคํ‹ฑ ์ขŒ์šฐ๋กœ ์ด๋™ํ•˜๋ฉด์„œ ์•ŒํŒŒ๋ฒณ ๋ณ€๊ฒฝ๋ฅผ ์œ„ํ•ด ์ƒํ•˜ ์ด๋™ ํ•˜๋Š” ํšŸ์ˆ˜(answer) ๋‘ ๊ฐœ๋ฅผ answer์— ๋ˆ„์ ํ•˜๋ฉด์„œ ๋”ํ•ด์ค˜์•ผ ํ•œ๋‹ค. ์—ฌ๊ธฐ์„œ ๋ฌธ์ œ๋˜๋Š” ๊ฒƒ์€ ๋‹จ๋ฐฉํ–ฅ์ด ์•„๋‹ˆ์•„ ์–‘์ชฝ(์ขŒ,์šฐ)๋กœ ์กฐ์ด์Šคํ‹ฑ์ด ์›€์ง์ผ ์ˆ˜ ์žˆ๊ธฐ ๋•Œ๋ฌธ์— ๊ฐ€์žฅ ๋น ๋ฅธ ๊ฒฝ๋กœ๋ฅผ ์ฐพ์•„์•ผ ํ•œ๋‹ค๋Š” ๊ฒƒ์ด๋‹ค. ์ด ๋•Œ ์—ฐ์†๋œ AAA์˜ ๊ฐœ์ˆ˜๋ฅผ ๊ณ„์‚ฐ ํ•ด ์ฃผ์–ด์•ผ ํ•œ๋‹ค.  โœ… ์•ŒํŒŒ๋ฒณ ๋ณ€๊ฒฝ ํ˜„์žฌ ์ธ๋ฑ์Šค์—์„œ A๋ฅผ ๋นผ์ค€ ๊ฐ’  vs Z๋ถ€ํ„ฐ ์‹œ์ž‘ํ•ด์„œ ํ˜„์žฌ ์ธ๋ฑ์Šค๋ฅผ ๋นผ์ค€ ๊ฐ’ + 1๋‘ ๊ฐœ๋ฅผ ๋น„๊ตํ•ด์„œ ๋” ์ž‘์€ ๊ฐ’์„ ์„ ํƒํ•ด ์ค€๋‹ค.์ „์ž๋Š” ์Šคํ‹ฑ์„ ์ •๋ฐฉํ–ฅโ–ผ A๋ถ€ํ„ฐ ์ˆœ์ฐจ์ ์œผ๋กœ Z๋กœ ๋‚ด๋ ค๊ฐ€๋ฉด์„œ ๋ฐ”๊พธ๋Š” ๊ฑฐ๊ณ ํ›„์ž๋Š” ์Šคํ‹ฑ์„ ๋จผ์ € ์—ญ๋ฐฉํ–ฅโ–ฒ์œผ๋กœ 1์นธ ๋Œ๋ ค์„œ Z๋ฅผ ๋งŒ๋“  ๋‹ค์Œ์— ๋ฐ˜๋Œ€๋กœ ํ•ด๋‹น ์•ŒํŒŒ๋ฒณ์„ ์ฐพ์•„๊ฐ€..
๐Ÿ“‘ 1. ๋ฌธ์ œ์„ค๋ช…๐Ÿ’ก 2. ์ ‘๊ทผ๋ฐฉ์‹๋ฌธ์ œ์—์„œ ์ฃผ์–ด์ง„ ๊ฒƒn : ์ „์ฒด ํ•™์ƒ์˜ ์ˆ˜lost : ์ฒด์œก๋ณต ๋„๋‚œ๋‹นํ•œ ํ•™์ƒ๋“ค์˜ ๋ฒˆํ˜ธ๋“ค  (๋ฐฐ์—ด) reserve : ์—ฌ๋ฒŒ ๊ฐ€์ ธ์˜จ ํ•™์ƒ ๋ฒˆํ˜ธ๋“ค (๋ฐฐ์—ด)์ฒด์œก๋ณต์€ ์•ž,๋’ค ๋ฒˆํ˜ธ ํ•™์ƒ ์—๋งŒ ๋นŒ๋ ค์ค„ ์ˆ˜ ์žˆ์Œ.๋„๋‚œ ๋‹นํ•œ ํ•™์ƒ๋“ค์€ ์—ฌ๋ถ„์ด ์—†์–ด์„œ ์ฒด์œก๋ณต ๋นŒ๋ ค์ค„ ์ˆ˜ ์—†์Œ.1. `lost`์™€ `reserve` ๋ฐฐ์—ด ์ •๋ ฌ 2. ์ฒด์œก์ˆ˜์—…์— ์ฐธ์—ฌํ•  ์ˆ˜ ์žˆ๋Š” ํ•™์ƒ์˜ ์ˆ˜ = ์ฒด์œก๋ณต์ด ์žˆ๊ฑฐ๋‚˜ ๋นŒ๋ฆด ์ˆ˜ ์žˆ๋Š” ํ•™์ƒ๋“ค์˜ ์ˆ˜ `์ฒด์œก๋ณต์„ ๋„๋‚œ ๋‹นํ•˜์ง€ ์•Š์€ ํ•™์ƒ์˜ ์ˆ˜` + `๋„๋‚œ๋‹นํ–ˆ์ง€๋งŒ ์˜ˆ๋น„๋กœ ๋“ค๊ณ  ์˜จ ํ•™์ƒ์˜ ์ˆ˜` + `๋„๋‚œ๋‹นํ–ˆ์ง€๋งŒ ์ฒด์œก๋ณต์„ ๋นŒ๋ฆด ์ˆ˜ ์žˆ๋Š” ํ•™์ƒ์˜ ์ˆ˜`์ด ๋ชจ๋“  ํ•™์ƒ๋“ค์˜ ์ˆ˜๋ฅผ ๋ˆ„์ ํ•ด์„œ answer ๋ณ€์ˆ˜์— ๋‹ด์•„ ์ค€๋‹ค.  โœ… ์ฒด์œก๋ณต์„ ๋„๋‚œ ๋‹นํ•˜์ง€ ์•Š์€ ํ•™์ƒ์˜ ์ˆ˜= ์ „์ฒด ํ•™์ƒ์˜ ์ˆ˜ - ์ฒด์œก๋ณต์„ ๋„๋‚œ๋‹นํ•œ ํ•™..
๐Ÿ“‘ 1. ๋ฌธ์ œ์„ค๋ช…๐Ÿ’ก 2. ์ ‘๊ทผ๋ฐฉ์‹FILE_PATH ์ถœ๋ ฅ ์˜ˆ์‹œ๋ฅผ ๋ณด๊ณ  '/home/grep/src/' + F.BOARD_ID + '/' + F.FILE_ID + F.FILE_NAME + F.FILE_EXT์ด๋ ‡๊ฒŒ ๋ฌธ์ž์—ด์ด ๊ฒฐํ•ฉ๋œ ๊ตฌ์กฐ๋ผ๋Š” ๊ฑธ ์•Œ ์ˆ˜ ์žˆ์—ˆ๋‹ค. CONCAT์œผ๋กœ ํ•ด๋‹น ๋ฌธ์ž์—ด์„ ๋ชจ๋‘ ๊ฒฐํ•ฉ ํ•ด ์ค€๋‹ค. ์ฒ˜์Œ์—๋Š” ํ—ท๊ฐˆ๋ ค์„œ + ์—ฐ์‚ฐ์ž๋กœ ํ–ˆ๋Š”๋ฐ ,๋กœ ๊ฒฐํ•ฉ์„ ํ•ด ์ค˜์•ผ ํ•œ๋‹ค.  ๋‘ ํ…Œ์ด๋ธ” ์กฐ์ธํ•  ๋•Œ๋Š” BOARD_ID ์ปฌ๋Ÿผ์„ ๊ธฐ์ค€์œผ๋กœ ์กฐ์ธ ํ•ด ์ค€๋‹ค. WHERE ์ ˆ์—์„œ ์„œ๋ธŒ์ฟผ๋ฆฌ๋ฅผ ์“ด๋‹ค. ๋จผ์ € USED_GOODS_BOARD๋ฅผ ์กฐํšŒ์ˆ˜ ์ปฌ๋Ÿผ(VIEW) ๊ธฐ์ค€์œผ๋กœ ๋‚ด๋ฆผ์ฐจ์ˆœ ํ•ด ์ฃผ๊ณ  ๊ทธ ์ค‘ ๊ฐ€์žฅ ๋†’์€ ๊ฒƒ๋งŒ ๊ฐ€์ ธ์™€์•ผ ํ•˜๋‹ˆ๊นŒ LIMIT1 ์„ ๊ฑธ์–ด์ค€๋‹ค.  ๋งˆ์ง€๋ง‰์œผ๋กœ FILE_ID๋กœ ๋‚ด๋ฆผ์ฐจ์ˆœ ์ •๋ ฌํ•˜๋ฉด ๋~! ์‰ฝ๋‹คโญ 3. ์ •๋‹ต์ฝ”๋“œ..
์ธ์ ˆ๋ฏธ์˜€๋˜๊ฒƒ
'ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค' ํƒœ๊ทธ์˜ ๊ธ€ ๋ชฉ๋ก (2 Page)
์ƒ๋‹จ์œผ๋กœ