Banner

My Tech Blog (๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค)

๐Ÿ“‘ 1. ๋ฌธ์ œ์„ค๋ช…๐Ÿ˜‰ 2. ๋ฌธ์ œ ์š”์•ฝ๋ฌธ์ œ์—์„œ ์ฃผ์–ด์ง„ ์กฐ๊ฑดPATIENTDOCTORAPPOINTMENTํ™˜์ž ์ •๋ณด์˜์‚ฌ ์ •๋ณด์ง„๋ฃŒ ์˜ˆ์•ฝ ๋ชฉ๋กPT_NO, PT_NAME, GEND_CD, AGE, TLNODR_NAME, DR_ID, LCNS_NO, HIRE_YMD, MCDP_CD, TLNOAPNT_YMD, APNT_NO, PT_NO, MCDP_CD, MDDR_ID, APNT_CNCL_YN, APNT_CNCL_YMDํ™˜์ž๋ฒˆํ˜ธ, ํ™˜์ž์ด๋ฆ„, ์„ฑ๋ณ„์ฝ”๋“œ, ๋‚˜์ด, ์ „ํ™”๋ฒˆํ˜ธ์˜์‚ฌ์ด๋ฆ„, ์˜์‚ฌID, ๋ฉดํ—ˆ๋ฒˆํ˜ธ, ๊ณ ์šฉ์ผ์ž, ์ง„๋ฃŒ๊ณผ์ฝ”๋“œ, ์ „ํ™”๋ฒˆํ˜ธ์ง„๋ฃŒ ์˜ˆ์•ฝ์ผ์‹œ, ์ง„๋ฃŒ์˜ˆ์•ฝ๋ฒˆํ˜ธ, ํ™˜์ž๋ฒˆํ˜ธ, ์ง„๋ฃŒ๊ณผ์ฝ”๋“œ, ์˜์‚ฌID, ์˜ˆ์•ฝ์ทจ์†Œ์—ฌ๋ถ€, ์˜ˆ์•ฝ์ทจ์†Œ๋‚ ์งœ ๋ฌธ์ œ์ชผ๊ฐœ๊ธฐโœ… 2022๋…„ 4์›” 13์ผ AP.APNT_YMD LIKE '2022-04-13%'โœ… ์ทจ์†Œ๋˜์ง€ ์•Š์€..
๐Ÿ“‘ 1. ๋ฌธ์ œ์„ค๋ช…โŒ 2. ์‹คํŒจํ•œ ์‹œ๋„์œ„์น˜ํ‹€๋ฆฐ๋ถ€๋ถ„๋งž๋Š” ์ฟผ๋ฆฌ์„ค๋ช…SELECTAVERAGEAVG()ํ‰๊ท ๊ตฌํ•˜๋Š” ํ•จ์ˆ˜AVERAGE()๊ฐ€ ์•„๋‹ˆ๊ณ AVG()์ž„ YEAR(YM)YEAR(YM) AS `YEAR`๋ณ„์นญ ์จ์•ผ ํ•จ์ปฌ๋Ÿผ๋ช… YEAR๋กœ ์ถœ๋ ฅ ROUND(AVG(PM_VAL1),3) ROUND(AVG(PM_VAL1),2)์†Œ์ˆ˜์…‹์งธ์ž๋ฆฌ์—์„œ ๋ฐ˜์˜ฌ๋ฆผํ•˜๋ ค๋ฉด ๋‘˜์งธ์ž๋ฆฌ๊นŒ์ง€ ๊ฒฐ๊ณผ๊ฐ’์ด ๋‚˜ํƒ€๋‚˜์•ผ ํ•˜๋‹ˆ๊นŒROUND(์ปฌ๋Ÿผ๋ช…, 2)๋กœ ํ•ด์•ผ ํ•จWHERELocation2 IS '์ˆ˜์›'Location2 = '์ˆ˜์›'IS๋Š” NULL ๊ฐ’๊ณผ์˜ ๋น„๊ต์—์„œ ๋งŒ ์‚ฌ์šฉ๋จORDER BYYEAR(YM)YEARSQL์˜ ์‹คํ–‰์ˆœ์„œ๋Š”ORDER BY์ ˆ์ด ๊ฐ€์žฅ๋งˆ์ง€๋ง‰์— ์‹คํ–‰๋˜๊ธฐ ๋•Œ๋ฌธ์—ALIAS ๋ช…์œผ๋กœ ์จ์ค˜๋„ ๋œ๋‹ค๊ผญ ๋ณ„์นญ ์จ์•ผํ•˜๋Š” ๊ฑด ์•„๋‹˜ SELECT YEAR(YM) AS YEAR,..
๐Ÿ“‘ 1. ๋ฃจ์‹œ์™€ ์—˜๋ผ ์ฐพ๊ธฐ โญ ์ •๋‹ต์ฝ”๋“œSELECT ANIMAL_ID, NAME, SEX_UPON_INTAKEFROM ANIMAL_INSWHERE NAME IN ('Lucy','Ella','Pickle','Rogan','Sabrina','Mitty')๐Ÿ“‘ 2. ํ•œ ํ•ด์— ์žก์€ ๋ฌผ๊ณ ๊ธฐ์ˆ˜ ๊ตฌํ•˜๊ธฐโญ ์ •๋‹ต์ฝ”๋“œCOUNT(ID)์— `FISH_COUNT` ๋ผ๋Š” ๋ณ„์นญ์„ ์ฃผ์–ด์•ผ ํ•จ๋ฌธ์ œ ์˜ˆ์‹œ์—์„œ DATE ํ˜•์‹์ด 'YYYY/MM/DD'๋กœ ๋˜์–ด ์žˆ๋Š” ๊ฑธ ๋ณด๊ณ  ์•ฝ๊ฐ„ ๋ณต์žกํ•˜๊ฒŒ ํ’€์—ˆ๋‹ค.SELECT COUNT(ID) AS FISH_COUNTFROM FISH_INFOWHERE DATE_FORMAT(Time, '%Y/%m/%d') LIKE '2021%' ๋‹ค๋ฅธ ์‚ฌ๋žŒ๋“ค์ด ํ’€์ดํ•œ ๊ฒƒ์„ ํ™•์ธํ–ˆ๋Š”๋ฐ ๋” ๊ฐ„๋‹จํ•˜๊ฒŒ ์ฟผ๋ฆฌ๋ฅผ ์ž‘์„ฑํ•  ์ˆ˜ ์žˆ๋‹ค. ์ด ๋ฌธ์ œ๋Š”..
๐Ÿ“‘ 1. ๋ฌธ์ œ์„ค๋ช…โญ 2. ์ •๋‹ต์ฝ”๋“œSELECT Animal_id, name, CASE WHEN Sex_upon_intake LIKE '%Neutered%' OR Sex_upon_intake LIKE '%Spayed%' THEN 'O' ELSE 'X' END AS ์ค‘์„ฑํ™”FROM ANIMAL_INSORDER BY ANIMAL_ID; ๐Ÿ˜Š 3. TMIANSI SQL ํ‘œ์ค€์—์„œ๋Š” ALIAS ์— ์ž‘์€๋”ฐ์˜ดํ‘œ๋ฅผ ์‚ฌ์šฉํ•˜๋Š” ๊ฒƒ์ด ํ—ˆ์šฉ๋˜์ง€ ์•Š์ง€๋งŒ ์จ๋„ ์ƒ๊ด€์€ ์—†๋‹ค. (๋‚˜๋Š” ๋”ฐ์˜ดํ‘œ ์ผ์Œ)SELECT Animal_id, name, CASE WHEN Sex_upon_intake LIKE '%Neutered%' ..
์œˆ๋„์šฐํ‚ค > MYSQL Command Line Client MySQL ๊ณ„์ • ๋น„๋ฐ€๋ฒˆํ˜ธ ์ž…๋ ฅํ•œ ๋’คCREATE DATABASE BBS;USE BBS; BBS๋ผ๋Š”  ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ๋งŒ๋“ค์–ด ์คŒ ์ด์ œ ํ…Œ์ด๋ธ” ์ƒ์„ฑํ•  ์ฐจ๋ก€ CREATE TABLE USER ๋กœ ์œ ์ € ์•„์ด๋””, ๋น„๋ฐ€๋ฒˆํ˜ธ, ์ด๋ฆ„, ์„ฑ๋ณ„, ์ด๋ฉ”์ผ ์ปฌ๋Ÿผ 5๊ฐœ ๋งŒ๋“ค์–ด ์ฃผ๊ณ  USERID๋ฅผ PK๋กœ ์ง€์ •ํ•ด์ฃผ์—ˆ์Œ.SHOW TABLES; ์œ„ ๋ช…๋ น์–ด๋กœ ํ…Œ์ด๋ธ” ๋ณด๊ธฐ  DESC USER; `DESC + ํ…Œ์ด๋ธ”๋ช…`์œผ๋กœ ํ˜„์žฌ ํ…Œ์ด๋ธ” ํ˜•ํƒœ ๋ณด์—ฌ์คŒ            ํ…Œ์ŠคํŠธ๋กœ ํ™๊ธธ๋™์ด๋ผ๋Š” ์œ ์ €์˜ ์ •๋ณด๋ฅผ ํ…Œ์ด๋ธ”์— ํ•œ ์ค„ ๋„ฃ์–ด ์คŒ ์ฐธ๊ณ ๋กœ ํ…Œ์ด๋ธ”์— ๋ฐ์ดํ„ฐ๊ฐ€ ์ž˜ ๋“ค์–ด๊ฐ”๋Š”์ง€ ํ™•์ธํ•˜๋ ค๋ฉด `select * from user;`  ๋ฐ์ดํ„ฐ๊ฐ€ ์ž˜ ๋“ค์–ด์™”์œผ๋ฉด `commit` ํ•ด ์ค€๋‹ค.  ์—ฌ๊ธฐ๊นŒ์ง€ ํ–ˆ์œผ๋ฉด ์ด์ œ..
๋ถ€ํŠธ ์ŠคํŠธ๋žฉ ๋‹ค์šด๋กœ๋“œ https://getbootstrap.com/docs/5.3/getting-started/download/ DownloadDownload Bootstrap to get the compiled CSS and JavaScript, source code, or include it with your favorite package managers like npm, RubyGems, and more.getbootstrap.com bootstrap-5.3.3-distํด๋” ์•ˆ์— ๋“ค์–ด๊ฐ€๋ฉด js๋ž‘ css ํด๋”๊ฐ€ ์žˆ๋‹ค.๋‘ ๊ฐœ ๋“œ๋ž˜๊ทธํ•˜๊ณ  ๋ณต์‚ฌํ•œ ํ›„ ์ดํด๋ฆฝ์Šค๋กœ ๋Œ์•„์™€์„œ  webapp์— ๋ถ™์—ฌ๋„ฃ๊ธฐ ํ•ด์„œ ์ถ”๊ฐ€  js๋Š” ์—‘์Šค ๋œจ๋Š”๊ฒŒ ๋งŽ์•„์„œ ๊ทธ๋ƒฅbootstrap.bundle.min.jsCDN์œผ๋กœ ์ถ”๊ฐ€ โšก ๋ถ€ํŠธ์ŠคํŠธ๋žฉ..
๐Ÿ“‘ 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. ์ •๋‹ต์ฝ”๋“œ..
1. ๋ฌธ์ œ ์„ค๋ช…2. ์ ‘๊ทผ๋ฐฉ์‹ECOLI_DATA๋Š” ๋ถ€๋ชจ-์ž์‹๊ฐ„์˜ ๊ณ„์ธต ๊ด€๊ณ„๋ฅผ ์ด๋ฃจ๊ณ  ์žˆ๊ธฐ ๋•Œ๋ฌธ์— ๊ฐ ์„ธ๋Œ€๋ณ„๋กœ ์ž์‹์ด ์—†๋Š” ๊ฐœ์ฒด์˜ ์ˆ˜๋ฅผ ์ถœ๋ ฅํ•˜๋ ค๋ฉด ์žฌ๊ท€ CTE๋ฅผ ์‚ฌ์šฉํ•ด์„œ ๋Œ€์žฅ๊ท ์˜ ์„ธ๋Œ€generation)๋ฅผ ๊ณ„์‚ฐํ•ด ์ฃผ์–ด์•ผ ํ•œ๋‹ค. WITH RECURSIVE ๋ธ”๋ก์„ ๋จผ์ € ์ง€์ • ํ•ด ์ฃผ๊ณ , ๋ธ”๋ก ๋ฐ”๊นฅ์—์„œ ์„ธ๋Œ€๋ณ„๋กœ ์ž์‹์ด ์—†๋Š” ๊ฐœ์ฒด์ˆ˜๋ฅผ ์กฐํšŒํ•˜๋Š” ์ฟผ๋ฆฌ๋ฅผ ์งœ ์ฃผ๋ฉด ๋œ๋‹ค. WITH RECURSIVE ๋ธ”๋ก์€ ๋˜ ๋‘ ๋ถ€๋ถ„์œผ๋กœ ๋‚˜๋‰˜๋Š”๋ฐ, ๋จผ์ €, PARENT_ID IS NULL์ธ ์กฐ๊ฑด์œผ๋กœ ๋ฐ์ดํ„ฐ๋ฅผ ์กฐํšŒํ•ด์„œ 1์„ธ๋Œ€(AS GENERATION)๋ฅผ ๊ทœ์ • ํ•ด ์ค€๋‹ค. ๋‘ ๋ฒˆ์งธ๋กœ ํ•  ์ผ์€, ์ด 1์„ธ๋Œ€ ์ปฌ๋Ÿผ์„ ๊ธฐ์ค€์œผ๋กœ +1์„ ํ•ด์„œ ๊ณ„์ธต ๊ตฌ์กฐ๋ฅผ ์กฐํšŒ ํ•˜๋Š” ๊ฒƒ์ด๋‹ค. ์ฆ‰, ๋ถ€๋ชจ ๊ฐœ์ฒด๋กœ๋ถ€ํ„ฐ ์ž์‹์˜ ์„ธ๋Œ€ ์ˆ˜๋ฅผ ๊ณ„์‚ฐ ํ•ด ์ฃผ๋Š” ๊ฒƒ์ด๋‹ค. Generation ..
์ธ์ ˆ๋ฏธ์˜€๋˜๊ฒƒ
'๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค' ํƒœ๊ทธ์˜ ๊ธ€ ๋ชฉ๋ก
์ƒ๋‹จ์œผ๋กœ