본문 바로가기
코딩/SQL

[MySQL] Scalar Functions : ucase, lcase, mid, length, round, now, format

by 미생22 2023. 3. 5.
728x90

1. Scalar functions

- 입력값을 기준으로 단일 값을 반환하는 함수

ucase : 영문을 대문자로 변환

lcase : 영문을 소문자로 변환

mid : 문자열 부분 반환

length : 문자열 길이 반환

round : 지정한 자리에서 숫자 반올림 (0이 소숫점 첫째자리)

now : 현재 날짜 및 시간 반환

format : 숫자를 천단위 콤마가 있는 형식으로 반환

2. ucase, lcase, length

위의 함수 모두 ucase가 들어가는 위치에 들어간다.

select ucase('this is ucase test.');
select ucase(col) from table where condition;

length의 경우 string에 length('')을 넣으면 0개, length(' ')처럼 공백을 넣으면 1개, length(NULL)을 넣으면 NULL을 반환한다.

 

3. mid

select MID(string, start_position, length);

string : 원본 문자열

start : 문자열 반환 시작 위치 (첫 글자 1, 마지막 글자 -1)

length : 반환할 문자열 길이

select mid('This is mid test', 6, 5);
> is mi

select mid('This is mid test', -4, 4);
> test
# -4부터 뒤로 4글자

select mid(col, start, length) from table where condition;

4. roung

number : 반올림한 대상

decimals : 반올림할 소수점 위치 (option, default=0)

select ROUND(number ,decimals_place);

위치를 지정하지 않으면 정수로 반올림함.

315.625에 2를 주면 315.63, -1을 주면 320이 됨.

5. now

현재 날짜 및 시간을 반환하는 함수

select now();

6. format

천 단위로 콤마 생성해 반환하는 함수

select format(number, decimal_place);

decimal_place=0 : 소수점을 표시하지 않을 경우

round함수가 자동으로 들어있음

select format(12345.6789,0);
> 12,346

select format(12345.6789,2);
> 12,345.68
728x90