SELECT id from table
여러 결과를 반환 하는 쿼리 (실제 경우는 복잡한 쿼리)가 있다고 가정 해 보겠습니다 .
문제는 id
쉼표로 구분 된 단일 행에서 모든 반환 을 얻는 방법입니다 .
답변
SELECT string_agg(id::text, ',') FROM table
PostgreSQL 9.0이 필요하지만 문제가되지 않습니다.
답변
array () 및 array_to_string () 함수를 사용하여 쿼리를 가져올 수 있습니다. 다음과 SELECT array( SELECT id FROM table );
같은 결과가 표시됩니다. {1,2,3,4,5,6}
그런 다음 {} 기호를 제거하려면 array_to_string () 함수를 사용하고 쉼표를 구분 기호로 사용 SELECT array_to_string( array( SELECT id FROM table ), ',' )
하면 다음과 같은 결과가 나타납니다. 1,2,3,4,5,6
답변
psql을 사용하여 모든 SQL 쿼리에서 CSV를 생성 할 수 있습니다.
$ psql
> \o myfile.csv
> \f ','
> \a
> SELECT col1 AS column1, col2 AS column2 ... FROM ...
결과 myfile.csv는 SQL 결과 집합 열 이름을 CSV 열 헤더로, 쿼리 튜플을 CSV 행으로 갖습니다.
h / t http://pookey.co.uk/wordpress/archives/51-outputting-from-postgres-to-csv
답변
동일한 경우 array_to_string () 및 array () 함수를 사용하십시오.
select array_to_string(array(select column_name from table_name where id=5), ', ');
답변
SELECT array_agg(id, ',') FROM table
{1,2,3,4}
Postgres 11을 사용하고 있으며 EntityFramework가 정수 배열로 가져오고 있습니다.