2016-12-08 4 views
1

을 설정합니다.PostgreSQL을 저장 프로 시저의 반환을 선택 결과는이 같은 일을 할 수있는 마이크로 소프트 SQL 서버에서

create or replace function 
    get_test() 
returns setof record 
as 
$$ select * from my_table $$ 
language sql 

또는 난 내 테이블 유형을 정의하지만, 수동으로 기술적으로 이미 존재하는 것을 다시하는 것은 매우 비현실적 수 : 나는 PostgreSQL을에서 할 관리 어떤 것과

가장 가까운 것입니다.

create or replace function 
    get_agent_summary() 
returns table (
    column1 type, column2 type, ... 
) 
as 
$$ 
begin 
    return query select col1, col2, ... from my_existing_table; 
... 

유지하기가 어렵습니다.

그래서 반환 할 테이블의 모든 단일 열을 다시 정의하지 않고도 결과 집합을 쉽게 반환 할 수 있습니까?

테이블이 자동으로 해당 형을 정의 포스트 그레스에서
+0

질문은? –

+0

@VaoTsun PostgreSQL에서 Microsoft SQL의 작업 수행 방법 – Reygoch

답변

4

: 당신이 과부하 될 수있는 몇 가지 언어 기능 중 하나에 함수를 만들 수 있기 때문에

create or replace function select_my_table(argument1 int, argument2 int) 
returns setof my_table language sql as $$ 
    select * 
    from my_table 
    where id > argument1 and id < argument2; 
$$; 

select * from select_my_table(0, 2); 

구문은 MS SQL 서버보다 더 자세한입니다.