숫자와 관련된 함수
sum : 더하기
avg : 평균
min : 최소값
max : 최대값
mod : 나머지
count : row수 세기
stddev :
var_samp
sin
cos
tan
acos
asin
atan
atan2
exp
ln
log
log2
log10
ceil
floor
round
abs : 절대값 반환
power
sqrt : 제곱근 계산
mod(%)
rand()
bin: 2진수로 바꾸기
hex: 16진수로 바꾸기
oct: 8진수로 바꾸기
conv('EF',16,10) : 16진수를 10진수로 바꾸기
형변환
select CAST('2018-12-25 11:22:22.123' AS DATETIME)
select CAST(1.577 AS Signed Integer) : 항상 반올림이 된다.
CONVERT(1.567, Signed Integer) : 항상 반올림이 된다.
select str_to_date('2018-12-13', '%Y-%m-%d') : date_format과 같은기능
문자열함수
concat
concat_ws: 구분자를 줄 수 있다.
group_concat: group by를 했을때 해당 부서의 내용들 전부 구분자로 연결시켜 하나의 컬럽에 합쳐준다.
length: 전체가 몇 바이트인지 반환한다.
char_length: 문자열의 길이를 반환한다.
bit_length: 전체가 몇 비트인지 반환한다
sign: 양수 음수
elt: n번째의 값을 가져온다
field: 문자열의 인덱스를 가져온다
find_in_set: 컴마로 이어진 문자열에서 인덱스를 가져온다(mysql은 인덱스가 1부터 시작한다)
instr: 문자열에서 몇번째 글자인지 인덱스를 가져온다.
locate: 문자열에서 몇번째 단어인지 인덱스를 가져온다.
insert: 문자열의 n번째 자리에 문자열을 삽입하거나 삭제한다.
format: 0을 주면 3번째 자리마다 숫자에 ,가 찍힌다,
truncate: 잘라도 반올림 되지 않는다.(내림)
left: 문자열중 왼쪽 n개를 반환한다
upper: 대문자로 만들어준다
lower: 소문자로 만들어준다
lpad: 문자열을 n자리로 만들때 채워넣을 문자를 정한다 (왼쪽으로 삽입)
rpad: n자리로 만들때 채워넣을 문자를 정한다 (오른쪽으로 삽입)
reverse
repeat: 문자열을 n번 반복해준다
space: 문자열에 공백을 만들어준다
replace
trim: 양쪽의 공백을 없애준다 (both, leading, trailing으로 공백이 아닌 문자를 없앨 수도 있다)
ltrim: 왼쪽의 공백을 없애준다
rtrim: 오른쪽의 공백을 없애준다
substring('str',<idx>,<length>): 인덱스번째부터 length글자만큼 자른다.
substring_index
IF문
IF(식, 참일때, 거짓일때)
IfNull(col1, 'aa'): 널이면 두번째 값 넣어주기
NullIF(col1, col2): 두 값이 같으면 null을 넣는다
시간관련 함수
now: 년월일시분초
sysdate: 년월일시분초
curdate:년월일
curtime:시분초
year:년을반환
month:월을반환
day:일을반환
hour:시간을반환
minute:분을반환
second:초를 반환
quarter:분기를 반환
week
weekday : 월요일을 0으로 시작해서 0 1 2 3 4 5 6 로 요일을 반환함
dayofweek : 월요일을 1로 시작해서 숫자로 요일을 반환함.
DATE: 년월일
TIME: 시분초
MAKEDATE(년,일):해당년의 몇번째 일을 date타입으로 만들어준다
MAKETIME(시,분,초): 해당시분초를 time타입으로 만들어준다.
dayofyear: 해당날이 올해의 몇번째 날인지 집계한다.
monthname: 해당날의 달 이름을 반환한다.
time_to_sec: 시분초를 초로 전환해준다
period_add: 년월에 월을 더한 날을 반환해준다
period_diff: 두 기간의 차이를 반환해준다
datediff
timediff
adddate: 해당날짜에서 n일을 더한 timestamp값을 반환해준다.(마이너스로 가능)
subdate: 해당날짜에서 n일을 뺀 timestamp값을 반환해준다.
addtime
subtime
DATE_FORMAT
'SeSac (2021-08 ~ 2021-12) > MySQL' 카테고리의 다른 글
| MySQL - SQL 한방에 정리하기 Part 2 - DML, TCL (0) | 2021.09.01 |
|---|---|
| MySQL - SQL 한방에 정리하기 Part 1 - DCL, DDL (0) | 2021.08.31 |
| MySQL 13 (마지막) - Backup & Restore (0) | 2021.08.31 |
| MySQL 11 - Cursor를 이용한 프로시저 작성 (0) | 2021.08.30 |
| MySQL 10 - Stored Function & Procedure (0) | 2021.08.30 |