๋ณธ๋ฌธ ๋ฐ”๋กœ๊ฐ€๊ธฐ
Data Base/MySQL

MySQL 13๋ฒˆ์งธ์ˆ˜์—…

by ์ฝ”๋”ฉํ•˜๋Š” ๋ถ•์–ด 2021. 2. 8.
๋ฐ˜์‘ํ˜•

โ–ถ ์Šค์นผ๋ผํ•จ์ˆ˜ ์‚ฌ์šฉํ•ด๋ณด๊ธฐ

โ€‹

์˜ˆ์ œ 6-7) ์˜๋ฌธ์ด๋ฆ„์˜ ๊ธธ์ด๊ฐ€ ์ •ํ™•ํžˆ 12์ž์ธ ๊ฐ ํ•™์ƒ์˜ ๋ฒˆํ˜ธ์™€ ์˜๋ฌธ์ด๋ฆ„์„ ์ถœ๋ ฅํ•˜๋ผ.

mysql> select stu_no, stu_ename

-> from student

-> where length(rtrim(stu_ename)) = 12;

โ€‹

โ€‹

์˜ˆ์ œ 6-8) ํ˜„์ฃผ์†Œ์˜ ์šฐํŽธ๋ฒˆํ˜ธ๊ฐ€ "01"๋กœ ์‹œ์ž‘ํ•˜๋Š” ํ•™์ƒ์˜ ํ•™๋ฒˆ๊ณผ ์ด๋ฆ„, ์šฐํŽธ๋ฒˆํ˜ธ๋ฅผ ๋‚˜ํƒ€๋‚ด์–ด๋ผ.

mysql> select stu_no, stu_name, post_no

-> from student

-> where substring(post_no,1,2) = '01';

โ€‹

โ€‹

์˜ˆ์ œ 6-9) ํ•™๋ฒˆ์ด 20141001, 20191002์ธ ํ•™์ƒ์˜ ํ•™๋ฒˆ, ์ด๋ฆ„, ์šฐํŽธ๋ฒˆํ˜ธ, ์ฃผ์†Œ๋ฅผ ์ถœ๋ ฅํ•˜๋ผ.

mysql> select stu_no, stu_name, post_no, address

-> from student

-> where stu_no = '20141001' or stu_no = '20191002';

โ€‹

โ€‹

์˜ˆ์ œ 6-10) ํ•™๋ฒˆ์ด '20141001'์ธ ํ•™์ƒ์˜ ํ•™๋ฒˆ๊ณผ ์ด๋ฆ„, ์šฐํŽธ๋ฒˆํ˜ธ, ์ฃผ์†Œ๋ฅผ ์ถœ๋ ฅํ•˜๋ผ. ์ถœ๋ ฅ์—๋Š” rtrim( ) ํ•จ์ˆ˜๋ฅผ ์ด์šฉํ•˜์—ฌ ์˜ค๋ฅธ์ชฝ ๊ณต๋ฐฑ ๋ถ€๋ถ„์„ ์‚ญ์ œํ•˜์—ฌ ์ถœ๋ ฅํ•˜๊ณ  ๋ฌธ์ž์—ด์„ ์—ฐ๊ฒฐ์‹œํ‚ค๋Š” CONCATํ•จ์ˆ˜๋ฅผ ์ด์šฉํ•œ๋‹ค.

(๋‹จ, ๋„๋กœ๋ช…์ด "๋•๋ฆ‰๋กœ41๊ธธ", ์•„ํŒŒํŠธ ์ด๋ฆ„์€ "๋‹ค์šฐ๋นŒ๋ผ2์ฐจ" ์ด๋‹ค.)

mysql> select s.stu_no, s.stu_name, s.post_no,

-> concat(rtrim(p.sido_name), '', rtrim(p.sigun_name), '', p.road_name, '', p.town_building, '', rtrim(s.address)) "์ฃผ์†Œ"

-> from student s, post p

-> where s.post_no = p.post_no

-> and road_name = '๋•๋ฆ‰๋กœ41๊ธธ'

-> and p.town_building = '๋‹ค์šฐ๋นŒ๋ผ2์ฐจ'

-> and s.stu_no = '20141001';

โ€‹

โ€‹

์˜ˆ์ œ 6-11) ํ•™๋ฒˆ์ด '20141001'์ธ ํ•™์ƒ์˜ ์ฃผ์†Œ๋ฅผ "์„œ์šธํŠน๋ณ„์‹œ ๊ฐ•๋ถ๊ตฌ ๋•๋ฆ‰๋กœ41๊ธธ ๋‹ค์šฐ๋นŒ๋ผ2์ฐจ 101๋™ 203ํ˜ธ"๋กœ ๋ณ€๊ฒฝํ•˜๋ผ.

mysql> update student

-> set address = '์„œ์šธํŠน๋ณ„์‹œ ๊ฐ•๋ถ๊ตฌ ๋•๋ฆ‰๋กœ41๊ธธ ๋‹ค์šฐ๋นŒ๋ผ2์ฐจ 101๋™ 203ํ˜ธ'

-> where stu_no = '20141001';

โ€‹

โ€‹

์˜ˆ์ œ 6-12) ํ•™๋ฒˆ์ด '20141001'์ธ ํ•™์ƒ์˜ ํ•™๋ฒˆ, ์ด๋ฆ„, ์šฐํŽธ๋ฒˆํ˜ธ, ์ฃผ์†Œ๋ฅผ ์ถœ๋ ฅํ•˜๋ผ.

mysql> select stu_no, stu_name, post_no, address

-> from student

-> where stu_no='20141001';

โ€‹

โ€‹โ€‹

โ€‹

โ–ถ ๋‚ ์งœ ๋ฐ ์‹œ๊ฐ„ ๊ด€๋ จ ํ•จ์ˆ˜

โ€‹

*now( ) ๋˜๋Š” sysdate( ) : ํ˜„์žฌ ๋‚ ์งœ์™€ ์‹œ๊ฐ„์„ ๋ฐ˜ํ™˜

mysql> select sysdate(), now();

โ€‹

โ€‹

*curdate( ) ๋˜๋Š” current_date( ) : ํ˜„์žฌ ๋‚ ์งœ๋ฅผ ๋ฐ˜ํ™˜

mysql> select curdate(), current_date();

โ€‹

โ€‹

*curtime( ) ๋˜๋Š” current_time( ) : ํ˜„์žฌ ์‹œ๊ฐ„์„ ๋ฐ˜ํ™˜ํ•œ๋‹ค.

mysql> select curtime(), current_time();

โ€‹

โ€‹

*dayofmonth(date) : ๋ฉฐ์น ์ธ์ง€๋ฅผ ๋ฆฌํ„ดํ•œ๋‹ค.

โ€‹

โ€‹

*dayofweek(date) / weekday(date) : ์ˆซ์ž๋กœ ์š”์ผ์„ ๋ฆฌํ„ดํ•œ๋‹ค.

-์ข€ ์ด์ƒํ•œ๋ฐ..?

โ€‹โ€‹

โ€‹

*dayofyear(date) : 1๋…„ ์ค‘ ๋ฉฐ์น ์ด ์ง€๋‚ฌ๋Š”๊ฐ€๋ฅผ ๋ฆฌํ„ดํ•œ๋‹ค.

mysql> select dayofyear(now());

โ€‹

โ€‹

*date_add์™€ date_sub : ๋‚ ์งœ์—์„œ ๊ธฐ์ค€๊ฐ’๋งŒํผ ๋”ํ•œ ๊ฐ’ / ๋‚ ์งœ์—์„œ ๊ธฐ์ค€๊ฐ’๋งŒํผ ๋บ€ ๊ฐ’

mysql> select date_add(now(), interval 3 day), date_sub(now(), interval 3 day);

โ€‹

โ€‹

*year, month

mysql> select year(now()), month(now());

โ€‹

โ€‹

*date_format(๋‚ ์งœ, 'ํ˜•์‹') : ๋‚ ์งœ๋ฅผ ํ˜•์‹์— ๋งž๊ฒŒ ์ถœ๋ ฅ

์˜ˆ์ œ 6-13) ๊ต์ˆ˜ํ…Œ์ด๋ธ”์—์„œ ๊ต์ˆ˜์ฝ”๋“œ, ๊ต์ˆ˜์ด๋ฆ„, ์ž„์šฉ์ผ์ž๋ฅผ ๋…„๋„(4์ž๋ฆฌ), ์›”(์˜๋ฌธ), ์ผ(0์ด ํฌํ•จ๋œ ๋‚ ์งœ) ํ˜•์‹์œผ๋กœ ์ถœ๋ ฅํ•˜๋ผ.

mysql> select prof_code, prof_name, date_format(create_date, '%Y %M %d')โ€‹

-> from professor;

โ€‹

โ€‹

โ€‹

โ–ถ ๋ฐ์ดํ„ฐํ˜• ๋ณ€ํ™˜ ํ•จ์ˆ˜

โ€‹

*ํ˜•๋ณ€ํ™˜ ํ•จ์ˆ˜

<ํƒ€์ž… ์ข…๋ฅ˜>

BINARY

CHAR

DATE

DATETIME

SIGNED

TIME

UNSIGNED

โ€‹

mysql> create table new_table select cast('2020-01-01' as dateโ€‹); → ๋‚ ์งœ๋ฅผ DATEํ˜•์œผ๋กœ ๋ณ€ํ™˜.

 

๋ฐ˜์‘ํ˜•

'Data Base > MySQL' ์นดํ…Œ๊ณ ๋ฆฌ์˜ ๋‹ค๋ฅธ ๊ธ€

MySQL 15๋ฒˆ์งธ์ˆ˜์—…  (0) 2021.02.08
MySQL 14๋ฒˆ์งธ์ˆ˜์—…  (0) 2021.02.08
MySQL 12๋ฒˆ์งธ์ˆ˜์—…  (0) 2021.02.08
MySQL 11๋ฒˆ์งธ์ˆ˜์—…  (0) 2021.02.08
MySQL 10๋ฒˆ์งธ์ˆ˜์—…  (0) 2021.02.08

๋Œ“๊ธ€