
오늘은 뷰테이블 생성시 필요컬럼을 함수를 통해 추가하는 방법에 대해 정리하려고 한다. 이번에 프로젝트를 하면서 PNU코드에서 산/일반 구분을 추출하였는데, 일반은 1, 산은 2라는 코드만 있을 뿐 실제 지도의 라벨에 뿌려 줄 텍스트를 가지는 컬럼이 없었다. 그래서 저 1과 2라는 값을 통해 산/일반 텍스트를 리턴해주는 함수를 이용하여 컬럼을 추가해주었는데 블로그에 정리가 안되있는 것 같아 정리해본다. get_user_name 함수 생성 CREATE OR REPLACE FUNCTION public.get_user_name(id character varying) RETURNS text LANGUAGE plpgsql AS $function$ DECLARE BEGIN return (select user_name..

저장 프로시저(함수)란? SQL로 만든 함수로, 이 함수 안에는 여러 SQL문을 작성하여 사용이 가능하다. 저장 프로시저(함수)를 사용하는 이유는? 단위 하나로 작업을 만들어 필요할 때마다 호출이 가능하며, 이는 반복적인 작업을 줄여주며, 여러개의 SELECT문이나 UPDATE, INSERT문을 하나의 프로시저(함수)에서 묶어 실행함으로써, 불필요한 네트워크 통신 횟수를 줄여 더 빠르게 DBMS연산 결과를 얻을 수 있다. 또한 프로시저(함수) 호출 시 인자만을 변경하여 빠르고 쉽게 재활용이 가능하다. Postgres에서는 PL/pgSQL을 활용하며 이는 Oracle의 PL/SQL과 유사하다. 1. function_name : 생성하고자 하는 사용자 함수의 이름 2. param1, param2 : 함수에서..

이번에 프로젝트를 하면서 프로시저 이야기가 나와서 한번 정리를 해보았다. 오라클을 공부할 때는 프로시저를 많이 들어봤었는데, Postgres에서는 프로시저에 대한 내용을 찾을 수 없어 구글링을 해보니, ** Postgres에서는 저장 프로시저(stored Procedure)를 사용하지 않고 함수(Funtion)를 사용한다고 한다. ** 쉽게 말해서 Postgresql에서 우리가 아는 Procedure = Function 이라고 생각하면 될 것 같다. ** 함수가 프로시저를 포함하고 있기 때문, Postgres에서 프로시저를 사용하지 못하는 것은 아니다. 프로시저와 함수 둘 다 사용 가능. 본문에서는 프로시저와 함수 둘다 생성해보고 사용해보겠다. 여기서 저장 프로시저란(함수)? 다음과 같다. 프로시저와 함..