[SQL] 16-Scalar Functions

김지현·2024년 6월 17일

SQL

목록 보기
15/16

📂 Scalar Functions

  • 입력값을 기준으로 단일 값을 반환하는 함수
FunctionDescription
UCASE영문을 대문자로 변환
LCASE영문을 소문자로 변환
MID문자열 부분을 반환
LENGTH문자열 길이 반환
ROUND지정한 자리에서 숫자를 반올림 (0이 소수점 첫째 자리)
NOW현재 날짜 및 시간 반환
FORMAT숫자를 천단위 콤마가 있는 형식으로 반환

📍 UCASE

  • 영문을 대문자로 변환
SELECT UCASE(string);

📍 LCASE

  • 영문을 소문자로 변환
SELECT LCASE(string);

📍 MID

  • 문자열 부분을 반환
SELECT MID(string, start_position, length);
-- string : 원본 문자열
-- start : 문자열 반환 시작 위치 (첫 글자는 1, 마지막 글자는 -1)
-- length : 반환할 문자열 길이

(예제) -4번 위치(뒤에서 4번째 위치)에서 4글자를 조회

SELECT MID('This is mid test', -4 ,4);	-- 결과 : test

📍 LENGTH

  • 문자열 길이 반환
    ✔ 문자가 없는 경우 길이 0
    ✔ 공백의 경우도 문자이므로 길이 1
    ✔ NULL은 길이가 없으므로 NULL
SELECT LENGTH(string);

📍 ROUND

  • 지정한 자리에서 숫자를 반올림
    ✔ 반올림할 위치를 지정하지 않을 경우 소수점 첫째 자리(0)에서 반올림
SELECT ROUND(number, decimals_place);
-- number : 반올림할 대상
-- decimals : 반올림할 소수점 위치 (option)

(예제)

SELECT ROUND(315.625);	-- 결과 : 316
SELECT ROUND(315.625, 1);	-- 결과 : 315.6
SELECT ROUND(315.625, -1);	-- 결과 : 320 (-1은 일 단위)
SELECT ROUND(315.625, -2);	-- 결과 : 300 (-2는 십 단위)

📍 NOW

  • 현재 날짜 및 시간을 반환
SELECT NOW();

📍 FORMAT

  • 숫자를 천 단위 콤마가 있는 형식으로 반환
SELECT FORMAT(number ,decimal_place);
-- number : 포맷을 적용할 문자 혹은 숫자
-- decimals : 표시할 소수점 소수점 위치

(예제)

SELECT FORMAT(12345.6789, 0);	-- 소수점 표시x, 결과 : 12,346
SELECT FORMAT(12345.6789, 2);	-- 소수점 두 자리, 결과 : 12,345.68

0개의 댓글