SQL 키워드 모음집

지니🧸·2024년 4월 23일
0

알고리즘

목록 보기
24/43

DATE

DATEDIFF

DATEDIFF(<끝나는 날짜>, <시작하는 날짜>)+ 1

+1은 필요 없을 수도 있지만
문제에 따라서 필요한 경우가 많음

YEAR, MONTH

YEAR(date) => date 중 연도만
MONTH(date) => date 중 month만

(예) YEAR(date) = 2021

DATETIME -> DATE

DATE_FORMAT(date, '%Y-%m-%d')

Y를 소문자로 쓰면 2022 중 22만 보존한다

CASE

SELECT
CASE WHEN <조건> THEN <결과>
WHEN <조건2> THEN <결과2>
ELSE <결과3> END
AS <결과열 이름>

SELECT PT_NAME, PT_NO, GEND_CD, AGE, 
CASE WHEN TLNO IS NULL THEN 'NONE'
ELSE TLNO END AS TLNO
FROM PATIENT
WHERE AGE <= 12 AND GEND_CD = 'W'
ORDER BY AGE DESC, PT_NAME ASC;

JOIN

INNER JOIN

SELECT * 
FROM <테이블1>
INNER JOIN <테이블2> ON <테이블1의 열> = <테이블2의 열>

SELECT FIRST_HALF.FLAVOR
FROM FIRST_HALF
INNER JOIN ICECREAM_INFO ON ICECREAM_INFO.FLAVOR = FIRST_HALF.FLAVOR
WHERE INGREDIENT_TYPE = 'fruit_based' AND TOTAL_ORDER >= 3000
ORDER BY TOTAL_ORDER DESC;

ROUND & AVG

ROUND(AVG(<컬럼명>), 1)) => 소수점 둘째 자릿수에서 round up

LIKE

문자열 비교시 컬럼값이 1. 타겟 문자열로 시작하는지

WHERE OPTIONS LIKE '네비게이션'
  1. 타겟 문자열로 끝나는지
WHERE OPTIONS LIKE '%네비게이션'

타겟 문자열이 컬럼값에 포함되어있는지

WHERE OPTIONS LIKE '%네비게이션%'

NULL

IS NULL

NULL 여부 확인

WHERE LENGTH IS NULL

또는

WHERE LENGTH IS NOT NULL

IFNULL

SELECT IFNULL(NULL, "HELLO");

컬럼값이 NULL이면 "HELLO" 반환
컬럼값이 NULL이 아니면 컬럼값 그대로 반환

CONCAT

단위 붙이기.. 등

SELECT CONCAT(LENGTH, 'cm') AS MAX_LENGTH

TRUNCATE

버림의 개념

SELECT (CASE WHEN PRICE < 10000 THEN 0 ELSE TRUNCATE(PRICE, -4) END)
AS PRICE_GROUP
profile
우당탕탕

0개의 댓글