반응형
선택 쿼리의 출력을 postgres의 하나의 어레이에 저장
내 코드는 다음과 같습니다.
SELECT column_name
FROM information.SCHEMA.columns
WHERE table_name = 'aean'
테이블의 열 이름을 반환합니다 aean
.
이제 배열을 선언했습니다.
DECLARE colnames text[]
선택의 출력을 colnames 배열에 어떻게 저장할 수 있습니까?
colnames를 초기화 할 필요가 있습니까?
두 가지 방법이 있습니다. 하나는 집계하는 것입니다.
SELECT array_agg(column_name::TEXT)
FROM information.schema.columns
WHERE table_name = 'aean'
다른 하나는 배열 생성자를 사용하는 것입니다.
SELECT ARRAY(
SELECT column_name
FROM information.schema.columns
WHERE table_name = 'aean')
나는 이것이 plpgsql 용이라고 가정하고 있습니다. 이 경우 다음과 같이 할당 할 수 있습니다.
colnames := ARRAY(
SELECT column_name
FROM information.schema.columns
WHERE table_name='aean'
);
나는 똑같은 문제가 있었다. Denis가 제공 한 솔루션의 작업 수정 사항 하나만 더 있습니다 (유형을 지정해야 함).
SELECT ARRAY(
SELECT column_name::text
FROM information_schema.columns
WHERE table_name='aean'
)
참조 URL : https://stackoverflow.com/questions/6402043/store-select-querys-output-in-one-array-in-postgres
반응형
'Development Tip' 카테고리의 다른 글
Enum.values () 대 EnumSet.allOf (). (0) | 2020.12.15 |
---|---|
R : 루프 중단 (0) | 2020.12.15 |
Python지도 개체는 구독 할 수 없습니다. (0) | 2020.12.15 |
MSVC 14.0 (VS 2015)으로 Boost를 컴파일하는 동안 알 수없는 컴파일러 버전 (0) | 2020.12.15 |
사용자가 수행 할 권한이 없습니다. cloudformation : CreateStack (0) | 2020.12.15 |