개발Story

Dbeaver라는 db툴을 이용해 postgresql function을 만들 수 있다.

 

function을 만드는 이유는 긴 sql문을 간편하게 실행할 수 있는 장점이 있다.

 

CREATE OR REPLACE FUNCTION 함수명 ()
 RETURNS integer
 LANGUAGE plpgsql
AS $function$
declare
r record;



 -->  1.함수명과 파라미트. 리턴값을 정의해준다.




BEGIN
for r in 
select 컬럼명
from 테이블
    loop

--> 2. for문을 돌릴 테이블을 정의한다.



   

INSERT INTO
VALUES
ON CONFLICT (충돌id)
DO UPDATE
SET 
컬럼명 = r.컬럼명

    end loop;

   return 1;

--> 3. 원하는 sql문을 작성한다. 2번에서 선언한 for r을 이용해 반복문을 쿼리에 삽입하는게 가능하다.


END;
$function$;
;



--> 4. return값이 맞는지. 세미콜런이 맞는지 확인후 함수를 저장한다.

 

나는 함수가 저장되기전 새로고침 버튼을 한번 눌러서 function문이 날라간적이 있다....

 

profile

개발Story

@슬래기

포스팅이 좋았다면 "좋아요❤️" 또는 "구독👍🏻" 해주세요!