본문 바로가기
MySQL

[SQL] 함수 (숫자, 문자열, 날짜/시간)

by 스응 2023. 3. 8.
728x90
728x90

숫자 함수

함수 기능
 CEIL(숫자, [n])  n이 명시되지 않았다면 정수 자리까지 올림
 
 n이 명시되었다면 소수점 n번째 자리까지 올림 
 ROUND(숫자, [n])  n이 명시되지 않았다면 정수 자리까지 반올림
 
 n이 명시되었다면 소수점 n번째 자리까지 반올림
 FLOOR(숫자, [n])  n이 명시되지 않았다면 정수 자리까지 내림
 
 n이 명시되었다면 소수점 n번째 자리까지 내림
 ABS(숫자)  절댓값으로 변환
 FORMAT(실수, n)  실수를 소수점 n번째 자리까지만 출력
 SIGN(숫자)  음수면 -1 반환

 0이면 0 반환

 양수면 1 반환

  - 집계 함수 : https://young0105.tistory.com/127

 

 


문자열 함수

함수 기능
CHAR_LENGTH('문자열')  문자열 길이 (공백 포함)
 LENGTH('문자열' || 숫자)  byte 수
 (한글은 한 글자당 3byte 차지)
 CONCAT('문자열1', '문자열2', ...)  문자열 병합
 CONCAT_WS('연결문자', '문자열1', '문자열2', ...)  문자열 사이를 '연결 문자'로 연결해서 병합
 LOWER('문자열')
 LCASE('문자열')
 소문자로 변환
 UPPER('문자열')
 UCASE('문자열')
 대문자로 변환
 FIND_IN_SET('찾을_문자', '문자1,문자2,문자3,...')  문자 집합 내에 '찾을 문자'가 존재하는 위치
 (인덱스 X, 1부터 시작)

 → 없으면 0 반환
 TRIM('문자열')  문자열의 양 끝 공백 제거 (문자열 사이 공백 제거 X)
 LTRIM('문자열')  문자열의 왼쪽 공백 제거
 RTRIM('문자열')  문자열의 오른쪽 공백 제거
 REPLACE('문자열', '바꿀_문자', '새_문자')  문자열에서 '바꿀 문자'를 찾아서, '새 문자'로 변환

 → 활용 : ' '을 ''로 바꾸면 모든 공백 제거
 SUBSTR('문자열', 시작문자위치, 문자개수)

 SUBSTRING('문자열', 시작문자위치, 문자개수)
 문자열의 '시작 문자 위치'에서부터 '문자 개수'만큼 추출
 (인덱스 X, 1부터 시작)

 ex) SUBSTR('abcde', 2, 2) → 'bc'
 ASCII('문자')  문자열을 정수 값인 아스키 코드로 변환
 LPAD('문자열', 자릿수, '채울_문자')  문자열 길이 = 자릿수가 되도록 좌측에 '채울 문자'를 채움

 

 


날짜/시간 함수

함수 기능
 NOW()  현재 날짜와 시간
 CURDATE()  현재 날짜
 CURTIME()  현재 시간
 YEAR(날짜)  연도 추출
 MONTH(날짜)  월 추출
 DAY(날짜)  일 추출
 HOUR(시간)  시 추출
 MINUTE(시간)  분 추출
 SECOND(시간)  초 추출

 

 

 

320x100
반응형

'MySQL' 카테고리의 다른 글

[SQL] DML - 데이터 조회 (SELECT) & 집계 함수  (0) 2023.03.11
[SQL] 집계 함수  (0) 2023.03.11
[SQL] 조인 (JOIN)  (0) 2023.03.08
[SQL] 관계 차수  (0) 2023.03.07
[SQL] 기본키(PK)와 외래키(FK)  (0) 2023.03.07

댓글