아래에 대한 쿼리를 작성하는 방법을 모르겠습니다.특정 값의 조합 찾기
내 표는 내가 두 매개 변수가 COL2에 존재하는 별개의 COL1 ID를 선택해야
col1 col2
5 1
5 5
5 6
5 7
4 5
4 8
4 9
4 3
3 3
3 5
입니다. 예. 내가 6,7를 보낼 경우 그것은 나에게 보내야 5
아래에 대한 쿼리를 작성하는 방법을 모르겠습니다.특정 값의 조합 찾기
내 표는 내가 두 매개 변수가 COL2에 존재하는 별개의 COL1 ID를 선택해야
col1 col2
5 1
5 5
5 6
5 7
4 5
4 8
4 9
4 3
3 3
3 5
입니다. 예. 내가 6,7를 보낼 경우 그것은 나에게 보내야 5
시도 :
SELECT col1
FROM mytable
WHERE col2 IN (6, 7)
GROUP BY col1
HAVING COUNT(DISTINCT col2) = 2
(DISTINCT가 중복되기를 바랍니다.) – Strawberry
고유 한 제약 조건이 없으므로 DISTINCT가 필요합니다. – jarlh
이 가장 빠른 솔루션 중 아마도 : 그것은처럼
SELECT col1 -- already DISTINCT?
FROM tbl t1
JOIN tbl t2 USING (col1)
WHERE t1.col2 = 6
AND t2.col2 = 7;
이 (col1, col2)
에 PRIMARY KEY
또는 UNIQUE
제약 조건을 가정 일반적으로 구현됩니다. 그렇지 않으면 DISTINCT
을 추가하십시오.
관계 분할을 구현하는 다른 많은 방법이 있습니다.
이 재귀 쿼리하지 않습니다 유의하시기 바랍니다 : 여기에 몇 가지 있습니다. 그에 따라 제목을 변경하십시오. –
제목을 제안 해주세요. 도움이 될 것입니다 – noobProgrammer
질문은 실제 테이블 정의 (CREATE TABLE 문)와 Postgres 버전을 제공해야합니다. –