알고리즘

[mySQL] 내가 보려고 만든 SQL 문법 기초 정리

감자156 2024. 3. 30. 02:22
반응형

작성중

 

기본 형식

SELECT * FROM TABLE;

 

 

JOIN 하기

SELECT * FROM TABLE1 JOIN TABLE2
ON TABLE1.COL1 = TABLE2.COL1;

 

 

GROUP으로 묶기

SELECT * FROM TABLE
GROUP BY COL1
HAVING COL1 < 10;

 

 

CASE WHEN 조건문

SELECT COL1, (
	CASE WHEN COL2 < 10 THEN 'A'
    	 WHEN COL2 < 20 THEN 'B'
    	 ELSE 'C'
    END
) AS CUSTOM_COL2 FROM TABLE;

 

 

문자열 처리

concat( str1, str2 )

 

통계

count( col이름 ),  sum( col이름 ),  avg( col이름 ),  std( col이름 ),  ceil( col이름 ), floor( col이름 ),  round( col이름 ),  abs( col이름 ),  sqrt( col이름 )

 

날짜 관련 함수

quarter( datecol )

 

 

정렬

 

 

WITH

with로 쿼리 안에서 재사용 가능한 테이블 표현식 ( Common Table Expression, CTE ) 을 만들어 사용

WITH TMP AS (SELECT SUM(SCORE) AS S, EMP_NO FROM HR_GRADE GROUP BY EMP_NO)
SELECT TMP.S AS SCORE, E.EMP_NO, E.EMP_NAME, E.POSITION, E.EMAIL
FROM HR_EMPLOYEES AS E JOIN TMP ON TMP.EMP_NO = E.EMP_NO
WHERE TMP.S = (SELECT MAX(S) FROM TMP);

 

 

기타

distinct( col이름 ), exists( 서브쿼리 )

 

 

서브쿼리1 : SELECT 에서

 

 

서브쿼리1 : FROM 에서

 

 

 

cf)

https://wildeveloperetrain.tistory.com/223

 

(MySQL) IN, NOT IN, EXISTS, NOT EXISTS 동작 방식 정리

해당 내용은 IN / NOT IN / EXISTS / NOT EXISTS 동작 방식을 정리한 내용으로 MySQL을 기준으로 실행하고 작성된 내용이지만 MSSQL, Oracle 등에서도 적용되는 내용입니다. (예시에 사용될 orders table, customers ta

wildeveloperetrain.tistory.com

 

반응형