본문 바로가기

Database

[Greenplum/Postgresql] DO SQL명령어 사용법

728x90
반응형

 

Greenplum/Postgresql 를 이용하여 Function 을 개발/테스트할때 Function 문법/기능을 확인하고 싶을때가 있다.

Function 을 생성하고 테스트한 뒤 Function 을 삭제하는 것은 너무 비효율적이며 이런 상황에서 사용하는 것이 DO 기능/SQL명령어이다.

DO 는 Parameter가 없고 return void 방식의 임시 Function 이라고 생각하면 될 것 같다.

 

참고사이트

Postgresql 공식사이트 참고 - https://www.postgresql.org/docs/9.4/sql-do.html

Tanzu Greenplum 공식사이트 참고 - https://gpdb.docs.pivotal.io/6-16/ref_guide/sql_commands/DO.html

 

0. 환경

Greenplum 6.13

DBeaver 7.3.4

 

1. RAISE NOTICE를 이용하여 DBeaver Output 표시

do $$
begin
    raise notice 'NOW : %', current_timestamp; 
end $$

 

2. RECORD를 이용한 테이블 목록 표시

DO $$
DECLARE r record;
BEGIN
    FOR r IN 
        SELECT table_schema, table_name
          FROM information_schema.tables
         LIMIT 100
    LOOP
        RAISE NOTICE 'SchemaName : %, TableName : %', r.table_schema, r.table_name;
    END LOOP;
END$$;

 

DO SQL명령어를 이용하면 Function 에서 사용할 수 있는 모든 기능을 사용할 수 있다.

 

728x90
반응형