반응형

전체 글 288

[MySQL] FIRST_VALUE()

FIRST_VALUE() 그룹 영역을 토대로 첫번째 값을 칼럼에 표시하는 함수이다. 즉, 조회된 세트(집합)에서 어떠한 상황에서도 첫 번째 값을 구하는 함수가 FIRST_VALUE이다. 주의해야 할 점은 OVER()에 ORDER BY 절을 꼭 삽입해야한다는 것이다. SELECT COL1, COL2, FIRST_VALUE(COL1) OVER(ORDER BY COL2) FROM TABLE_NAME SELECT COL1, COL2, FIRST_VALUE(COL1) OVER(PARTITION BY COL1 ORDER BY COL2) FROM TABLE_NAME https://dev.mysql.com/doc/refman/8.0/en/window-function-descriptions.html#function_fi..

DB/MySQL 2023.01.18

[MySQL] IFNULL()

IFNULL() MySQL에서 해당 Column의 값이 NULL을 반환할 경우 다른 값으로 출력하고 싶다면 INFULL함수를 사용하면 된다. IF() 함수와 마찬가지로 익숙하다. 오라클의 NVL()정도로 생각해도 문제가 없을 것 같다. expr1이 NULL이면 expr2, 그렇지 않으면 expr1 을 return SELECT IFNULL(expr1, expr2) FROM 테이블명; SELECT IFNULL(Column명, "Null일 경우 대체 값") FROM 테이블명; https://dev.mysql.com/doc/refman/8.0/en/flow-control-functions.html#function_ifnull MySQL :: MySQL 8.0 Reference Manual :: 12.5 Flow..

DB/MySQL 2023.01.18

[MySQL] SUM() OVER()함수

순위함수(분석함수) 결과에 순번, 순위를 매기는 함수 비집계함수 중 RANK, NTILE, DENSE_RANK, ROW_NUMBER 등이 해당된다. SELECT (arguments) OVER ([PARTITION BY ] ORDER BY ) FROM 테이블명; PARTITION BY : 동일 그룹으로 묶어줄 칼럼 명 지정 ORDER BY : Partition 정의에 지정된 컬럼에 대한 정렬 수행 누적 합계 구하기 윈도우 함수와 SUM() 함수를 함께 사용해 누적 합계를 구할 수 있습니다. SELECT DATE(payment_date) AS dt, SUM(amount) FROM sakila.payment p GROUP BY dt ORDER BY dt ASC 해당 쿼리는 단순히 결제일시를 결제일로 변환하고 ..

DB/MySQL 2023.01.17

[MySQL] LAG() 함수

순위함수(분석함수) 결과에 순번, 순위를 매기는 함수 비집계함수 중 RANK, NTILE, DENSE_RANK, ROW_NUMBER 등이 해당된다. SELECT (arguments) OVER ([PARTITION BY ] ORDER BY ) FROM 테이블명; PARTITION BY : 동일 그룹으로 묶어줄 칼럼 명 지정 ORDER BY : Partition 정의에 지정된 컬럼에 대한 정렬 수행 LAG() 함수 LAG() 함수는 LEAD() 함수와 비슷합니다. 두 함수 모두 2개의 행 간의 차이를 구할 때 사용되곤 합니다. 두 함수의 차이점이라고 하면 LAG() 함수는 앞 행에서 값을 반환하고 LEAD() 함수는 뒷 행에서 값을 반환합니다. SELECT c.Code , c.Name , c.Continen..

DB/MySQL 2023.01.17

[MySQL] LEAD() 함수

순위함수(분석함수) 결과에 순번, 순위를 매기는 함수 비집계함수 중 RANK, NTILE, DENSE_RANK, ROW_NUMBER 등이 해당된다. SELECT (arguments) OVER ([PARTITION BY ] ORDER BY ) FROM 테이블명; PARTITION BY : 동일 그룹으로 묶어줄 칼럼 명 지정 ORDER BY : Partition 정의에 지정된 컬럼에 대한 정렬 수행 LEAD() 함수 분석 함수는 윈도우 함수의 다른 종류입니다. 해당 함수는 행 내에 있는 값을 반환할 때 사용되고, 그 행들은 주로 선행하는 행들이거나 후행하는 행들입니다. 분석 함수는 특정 열의 선행 혹은 후행하는 행 사이의 차이를 구할 때 상당히 용이합니다. LEAD라는 이름이 말해주듯이 해당 함수는 뒤에 있..

DB/MySQL 2023.01.17
반응형