0
我想從表中選擇具有完全相同屬性的組。例如,我的表就像下面表內相同組合的子查詢
facs_run_id | fcj_id
1 | 17
1 | 4
1 | 12
2 | 17
2 | 4
2 | 12
3 | 17
3 | 12
3 | 10
在該表中的每個facs_run_id
具有fcj_id
不同組合,有些是facs_run_id
號之間共享,而其他則不是。例如,以上facs_run_id
1
和2
是相同的,而3
共享fcj_id
但與1
和2
不相同。我想提出查詢:
- 收集所有
fcj_id
從特定facs_run_id
- 發現具有完全相同的
fcj_id
組合的所有facs_run_id
。
在這裏,我想找到所有facs_run_id
是在fcj_id
組合等於facs_run_id: 1
,所以它應該返回2
(或1
& 2
)。
我可以得到那些缺少某些fcj_id
,甚至發現其fcj_id
缺少這一點:
SELECT facs_run_id
FROM facs_panel
EXCEPT
SELECT fcj_id
FROM facs_panel
WHERE facs_run_id = 2;
或本:
SELECT row(fp.*, fcj.fcj_antigen, fcj.fcj_color)
FROM facs_panel fp
LEFT OUTER JOIN facs_conjugate_lookup fcj ON fcj.fcj_id = fp.fcj_id
WHERE fp.fcj_id in (SELECT fp.fcj_id
FROM facs_panel fp
WHERE fp.facs_run_id = 1);
但我不能夠進行查詢返回IDENTICAL facs_run_id
。我想這可能被認爲是一種尋找聚合重複的方式,但我不知道該怎麼做。任何建議或指針將不勝感激(或更好的方式來創建表,如果這種類型的查詢將無法正常工作)。
非常感謝您!我現在剛剛找到了答案,但我準備好重做所有這些。謝謝。 – user1148636 2014-09-25 18:37:46