[SQL] PostgreSQL은 여러 선택 문을 결합
SQLPostgreSQL은 여러 선택 문을 결합
나는 동일한 스키마의 많은 수의 데이터베이스의 스키마 이름 목록에서 여러 SELECT 문을 생성하는 Excel을 사용했습니다 :
select result from foo.table limit 1;
select result from bar.table limit 1;
select result from doo.table limit 1;
(foo는, 바 & 덜렁이 내 스키마의 예입니다, 수백 현실에있다).
각 SELECT는 하나의 결과를 반환합니다. 나는 단순히 스키마가 있기 때문에 많은 행으로 하나 열 개 결과를 원한다. 나는 다음 스키마 이름에 대한 Excel로이 다시 복사 할 수 있습니다.
나는 다른 사람들이 폐기되면서, 1 개 행을 얻을 위에 나는 쿼리를 실행하면 :
Query result with 1 row discarded. Query result with 1 row discarded. Total query runtime: 40 ms. 1 row retrieved.
나는 UNION ALL을 사용하여 시도했지만 한계 (1) 나는 일이 발생하지 않도록하기 위해 각 스키마 테이블이 나타납니다에서 반환 한 행을 보장하기 위해 사용하고 있습니다.
어떻게 하나 폐기되는 다른 행을 방지하거나 내가 필요 값 (두 개의 열이 각 스키마에 대한 하나의 행 - - SCHEMA_NAME, 결과를) 반환하는 쿼리를 쓸 수있는보다 효율적인 방법을?
해결법
-
==============================
1.그냥 구문이 모호하기 위해 괄호 안에 개별 문을 포장 :
그냥 구문이 모호하기 위해 괄호 안에 개별 문을 포장 :
(SELECT result FROM tbl1 LIMIT 1) UNION ALL (SELECT result FROM tbl2 LIMIT 1)
UNION에 대한 매뉴얼은이 문제에 매우 분명하다 :
-
==============================
2.하위 쿼리의 포장은 주위에 얻을 것이다, 그러나 그것은 조금 못생긴 가져옵니다.
하위 쿼리의 포장은 주위에 얻을 것이다, 그러나 그것은 조금 못생긴 가져옵니다.
SELECT result FROM (select 'a'::text AS result from foo limit 1) a UNION ALL SELECT result FROM (select 'b'::text AS result from bar limit 1) b
최신 정보
어윈의 응답을 참조하십시오. 그것은 더 좋다.
-
==============================
3.
create view my_data1 AS with data as ( select student_id,sum(marks) as total_marks from marks_marks group by 1 ) , data1 as ( select id, name from students_class ), data2 as ( select applicant_name, id, class_name from students_students ) select data2.applicant_name , data1.name as class_name , data.total_marks from data2 join data1 on data1.id = data2.class_name join data on data.student_id = data2.id select * from my_data1
from https://stackoverflow.com/questions/11828772/postgresql-combine-multiple-select-statements by cc-by-sa and MIT license
'SQL' 카테고리의 다른 글
[SQL] 매개 변수를 사용하여 SQL 쿼리에서 와일드 카드를 사용하는 방법 (0) | 2020.07.13 |
---|---|
[SQL] 모든 열이 NULL이 있는지 확인하는 빠른 방법이 있나요? (0) | 2020.07.13 |
[SQL] SQL : 여러 열을 GROUP BY 및 MAX를 사용하여 (0) | 2020.07.13 |
[SQL] PostgreSQL을에 선택 MySQL의 변환 (0) | 2020.07.13 |
[SQL] SQLSTATE는 [23000] : 무결성 제약 조건 위반 : 1452 추가 또는 자식 행을 업데이트 할 수 없습니다가 : 외래 키 제약 조건이 실패 (0) | 2020.07.13 |