두 사람이 같은 이름을 가질 수 있지만 별도의 ID가있는 테이블이 있습니다. 나는 그 이름을 받았고 신분증을 요구할 필요가있다. 나는 같은 명령을 사용하면배열로 여러 행 선택
: 나는 명령 줄 (psql를)에서이 명령을 사용하는 경우
SELECT id_num INTO cust_id FROM Customers WHERE name=CName;
를, 그것은 (예를 들어)이 개 결과를 반환합니다.
그러나 SQL 스크립트 (PL/pgSQL)의 일부로 사용하면 항상 첫 번째 인스턴스 만 가져옵니다.
cust_id[]
으로 선택을 시도했지만 오류가 발생했습니다. 그렇다면 모든 결과를 선택하고 배열이나 다른 쉬운 방법으로 펌프를 사용하는 적절한 방법은 무엇입니까? 당신은 PostgreSQL의 문서 9.1에서 루프 사용을
DECLARE id_num bigint;
FOR id_num in select cust_id from Customers WHERE name = CName LOOP
your code here
END LOOP;
읽기 plpgsql 제어 구조를 선호하는 경우
다시는 plpgsql에서 사용 배열의 예입니다 http://stackoverflow.com/questions/11731481/pl-pgsql-select-into-an-array – sufleR
배열에 대한 대안은 루프 일 수 있습니까? '다음'결과 가져 오기를 지정하는 방법이 있습니까? – user974703