sql 3

[PostgreSQL] WITH절 사용하기

WITH 절이란? 반복되는 구문이거나, 동일한 구문 또는 복잡한 구문을 작성할 때 매크로처럼 미리 선언하여 사용하는 서브쿼리라고 생각하면 된다. 해당 구문을 통해 임시 테이블이 생성된다. VIEW는 한번 만들어 놓으면 DROP 전 까지 없어지지 않지만, WITH 절로 생성된 임시 테이블은 한번 실행되는 쿼리 내에만 실행되는 생명주기를 가지고 있다. WITH 절로 생성한 임시 테이블은 한번 생성되면 동일한 블록을 재사용할 수 있는 장점이 있으며, Planning 할때 속도 향상에 많은 도움을 준다. 사용 방법 /* * [명칭] 에다가 alias 할 이름을 작성하면 된다. * 그리고 해당 결과를 불러올 땐 alias한 이름을 불러오면 된다. */ with [명칭] as( select ... from ... ..

[PostgreSQL] SUM OVER 사용하여 누적 합계 구하기

SUM OVER 집계 함수는 윈도우 함수(Window Function) 중 하나이다. 집계 함수와 차이점은 그룹화되지 않고 행들의 정체성을 유지하여 나타낸다. 사용 방법 SELECT 컬럼1 , 컬럼2 , SUM(누적할 컬럼명) OVER(PARTITION BY 그룹화할 컬럼명 ORDER BY 정렬할 컬럼명 정렬 방식) FROM [테이블 명] 아래 테이블은 예시 테이블이다. 1. 총합계 구하기 현재 article을 기준으로 행마다 총합을 넣고 싶다고 가정해본다면, 쿼리는 다음과 같다. SELECT article , amount , reg_date , reg_time , sum(amount) over(partition by article) as total --파티셔닝하여 총합 구하기 FROM PAYMENT_H..

[PostgreSQL] DB에 존재하는 테이블 명 조회 및 컬럼 조회

PostgreSQL에서 DB에 존재하는 테이블과 컬럼을 조회하려면 특정 테이블을 조회해야한다. 조회 방법에 앞서 information_schema에 대해 알아야한다. information_schema란? DB에 속한 데이터들의 정보를 담고 있는 메타데이터이다. 스키마 정보, 테이블 정보, 컬럼 정보 등등 가지고 있다. 테이블 조회 1. pg_stat_user_tables 사용하여 테이블 조회하기 SELECT schemaname -- 스키마 명 , relname -- 테이블 명 FROM pg_stat_user_tables pg_stat_user_tables 테이블을 조회하면 사용자가 접근할 수 있는 모든 데이터베이스와 테이블 내역을 보여준다. 2. information_schema 사용하여 테이블 조회하기..