본문 바로가기
코딩테스트 tip

MySQL 코테에 자주 쓰이는 함수들

by Mecodata 2023. 1. 16.

IFNULL(컬럼, A) = 해당 컬럼의 데이터가 NULL일 경우 A로 표시

IF(조건, 참일 경우 값, 거짓일 경우 값) = 조건문

CASE WHEN 조건 THEN 참일 경우 값 (ELSE 거짓일 경우 값) END = 조건문 (WHEN~THEN 여러개 입력 가능)

 

YEAR(), MONTH(), DAY(), HOUR(), MINUTE(), SECOND() = 해당 컬럼의 데이터에서 해당 날짜 데이터 추출

DATE_FORMAT(컬럼, 설정) = 해당 컬럼의 데이터에서 설정한 포맷에 맞추어 날짜 데이터 추출

=> 보통 "%Y-%m-%d"를 주로 사용 (2023-01-16 형태)

DATEDIFF(날짜 데이터1, 날짜 데이터2) = 두 날짜 데이터의 차이(데이터1-데이터2, 일 단위) 계산 (당일을 포함하려면 +1을 해야함)

TIMEDIFF(날짜 단위, 날짜 데이터1, 날짜 데이터2) = 두 날짜 데이터의 차이(데이터1-데이터2) 계산 (당일을 포함하려면 +1을 해야함)

 

LEFT(컬럼, 숫자), RIGHT(컬럼, 숫자) = 맨 왼쪽/오른쪽으로부터 지정한 숫자 만큼의 텍스트 데이터 추출 (슬라이싱)

SUBSTRING(컬럼, 시작 인덱스, 끝 인덱스) = 지정한 시작~끝 인덱스의 부분 만큼의 텍스트 데이터 추출 (슬라이싱)

SUBSTRING_INDEX(컬럼, 텍스트, 숫자) = 지정한 텍스트가 지정한 숫자 만큼 나오기 전까지의 텍스트 데이터 추출

ex) SUBSTRING_INDEX("www.naver.com", ".", 2) = www.naver

 

LIKE = WHERE 조건절에서 특정 문자열이 포함된 데이터 선택 (%= 0번 이상 반복, _= 1번 이상 반복) 

ex) WHERE options LIKE "%빨간색%" => "빨간색"이라는 문자열이 포함되어 있으면 포함

 

SUM() = 총합

AVG() = 평균

MOD(분자/분모) = 나머지

CEILING = 소숫점 올림 (소수 -> 정수)

FLOOR = 소숫점 버림 (소수 -> 정수)

ROUND(컬럼, 반올림할 자릿수-1) = 반올림

TRUNCATE(컬럼, 버림할 자릿수) = 버림

COUNT(*) = 개수

LIMIT = 보여줄 데이터 개수 설정

OFFSET = 보여줄 데이터의 시작 인덱스 설정

'코딩테스트 tip' 카테고리의 다른 글

WITH RECURSIVE 문 (MySQL 재귀)  (0) 2023.02.17
Python 코테, Java 코테 비교  (0) 2023.01.21
BFS 유형에서 이차원 배열 주의사항  (0) 2022.11.08
key=lambda를 이용한 2차원 정렬  (0) 2022.11.01
count()와 Counter()  (0) 2022.10.31

댓글