동적쿼리 썸네일형 리스트형 Postgresql 변수 / 바인드 / 매개변수 처리 $1, $2 순서대로 바인딩되고 변수의 이름을 바꿀수 없다.(갯수가 다르면 에러) CREATE OR REPLACE FUNCTION report_get_countries_new (starts_with text , ends_with text = NULL) RETURNS SETOF lookups.countries AS $func$ DECLARE sql text := 'SELECT * FROM lookups.countries WHERE country_name >= $1'; BEGIN IF ends_with IS NOT NULL THEN sql := sql || ' AND country_name 더보기 [postgreSQL] Function 구조 postgreSQL에서는 Function과 Store Procedure의 구분이 없다. - 대략적인 구조 CREATE OR REPLACE FUNCTION 함수이름 (파라미터명 파라미터타입, ....) RETURNS 리턴타입 // RETURN 타입이 테이블일 경우 TABLE(컬럼명 컬럼타입, ....) LANGUAGE 사용언어 [COST 최대사용자원(숫자임)] [VOLATILE, STABLE, IMMUTABLE] // 택1, Function수행에 필요한 Query실행 시 최적화와 관련된 부분.. AS [$[함수의 정의를 지칭할 변수명]$] //함수정의 DECLARE // 변수 선언 및 정의 변수명 변수타입, .... BEGIN // 로직시작 [ IF 조건문 THEN 로직 ELSE 로직 END IF; ] [.. 더보기 이전 1 다음