목록SQL/SQL Cheat Sheet (3)
인생, 살아만 있다면 어떻게든 된다.
1. 집계함수함수(컬럼) OVER (PARTITION BY 컬럼 ORDER BY 컬럼)함수: SUM, AVG, COUNT, MIN, MAXPARTITION BY: GROUP BYORDER BY: 정렬 2.누적합SUM(컬럼) OVER (PARTITION BY 컬럼 ORDER BY 컬럼) AS Cumsum 3.순위 정하기ROW_NUMBER() OVER (ORDER BY 컬럼)RANK() OVER (ORDER BY 컬럼)DENSE_RANK() OVER (ORDER BY 컬럼)함수 뒤에 인자가 들어가지 않음ROW_NUMBER(): 중복 없이 숫자 부여 ex:) 1,2,3,4,5 ...RANK(): 중복 있고, 숫자 건너 뜀 ex:) 1, 1, 3, 4, 5DENSE_RANK(): 중복 있고, 숫자 건너 뛰지 않..
서브쿼리- 쿼리 안에서 값을 생성하거나 조건을 지정하기 위해 사용하는 '안쪽 쿼리'- 데이터를 더욱 정교하게 필터링하거나, 필요한 값을 계산하는 데 유용합니다 서브쿼리의 종류 1.스칼라 서브쿼리- 하나의 값을 반환, SELECT나 WHERE절에서 주로 사용-- 부서 10의 평균 연봉을 계산하여 조건을 만족하는 직원 조회SELECT employee_name, salaryFROM employeesWHERE salary > (SELECT AVG(salary) FROM employess WHERE department_id = 10); 2.다중 행 서브쿼리- 여러 행을 반환, IN/ ANY/ ALL과 함께 사용-- 위치ID가 200인 부서들의 ID에 해당하는 직원 정보를 조회SELECT employee_name,..
1.CTE의 사용- Commom Table Expressions- 쿼리를 통해 만들어낸 임시 데이터 세트WITH cte1 AS (SELECT a,b FROM table1), cte2 AS (SELECT c,d FROM table2)SELECT b,d FROM cte1 JOIN cte2WHERE cte1.a = cte2.c; 2.DATE Type DATE_ADD(기준 날짜, INTERVAL)SELECT DATE_ADD(NOW(), INTERVAL 1 SECOND);SELECT DATE_ADD(NOW(), INTERVAL 1 MINUTE);SELECT DATE_ADD(NOW(), INTERVAL 1 HOUR);SELECT DATE_ADD(NOW(), INTERVAL 1 DAY);SELECT DATE..