본문 바로가기
개념 공부/SQL

[MySQL] 코딩테스트 준비를 위한 MySQL 내장함수 정리

by clean01 2024. 11. 9.

문자열 관련 내장 함수

LOCATE("A", "ABC"): "ABC"에서 "A"가 몇번째인지를 반환

SUBSTRING("abc", 2): 2번째 문자부터 반환

RIGHT("ABCD", 1): "ABCD" 오른쪽에서 1번째까지

LEFT("ABCD, 1): "ABCD" 왼쪽에서 1번째까지

UPPER(str), LOWER(str): 대문자로 변환, 소문자로 변환

CONCAT("ABC", "DEF", "GHI"): 문자열 이어붙이기

REPLACE("ABC", "A", "Z"): "ABC"의 "A"를 "Z"로 변환

LPAD("DEF", 5, "_"): "DEF" 왼쪽에 "_"를 전체 문자열이 5글자가 되도록 붙이기

 

 

숫자형

ABS(숫자): 절대값 반환

CEILING(실수): 올림

FLOOR(실수): 내림

ROUND(실수): 반올림

TRUNCATE(숫자, 자리수): 버림

select truncate(3.567, 2); // 결과: 3.56

 

POWER

 

 

날짜형

NOW(): 현재 날짜 시간

CURRENT_DATE()

CURRENT_TIME()

YEAR(날짜): 연도 반환. // 2024

MONTH(날짜): 월 반환. // 11

DAY(날짜): 일 반환. // 9

HOUT(날짜시간): 시간 반환

MINUTE(날짜시간): 분 반환

SECOND(날짜시간): 초 반환

DATE_FORMAT(날짜, 포맷): 뒤의 포맷으로 날짜를 포맷팅

SELECT DATE_FORMAT(NOW(), '%Y-%m-%d'); // 결과: 2024-11-09

 

 

ADD_DATE, SUB_DATE: 날짜를 더하거나 뺀다.

SELECT ADDDATE('2022-12-31', INTERVAL 15 DAY); -- '2022-01-15'
SELECT ADDDATE('2022-12-31', INTERVAL 1 MONTH); -- '2022-01-31'

SELECT SUBDATE('2022-12-31', INTERVAL 15 DAY); -- '2022-12-16'
SELECT SUBDATE('2022-12-31', INTERVAL 1 MONTH); -- '2022-11-30'

 

 

그외 자주 쓰이는 내장함수들

 

IFNULL(컬럼, 대체): 해당 컬럼의 값이 NULL일때 대체되는 문자열

 

 

여러 조인 모음

 

 

Reference

https://velog.io/@wngud4950/MySQL-%EB%82%B4%EC%9E%A5%ED%95%A8%EC%88%98-%EC%A0%95%EB%A6%AC

 

MySQL 내장함수 정리

CONCAT(), CONCAT_WS() : 두 개 이상의 문자열을 결합합니다.SUBSTRING() : 문자열의 일부분을 추출합니다.SUBSTRING_INDEX(): 찾는 문자열이 n회 등장하면 그 이후 문자열을 버립니다. n이 마이너스면 오른쪽에

velog.io

https://sungpaks.github.io/programmers-sql-solutions/

 

🌩️ 코딩테스트 SQL문제 벼락치기!! (프로그래머스 SQL 고득점 kit 풀이)

코딩테스트에는 알고리즘만 있는게 아니었네요

sungpaks.github.io