指定されたテーブル:
create table Person( Name varchar(100) )
Name はすべての Person に対して一意です
可能なすべての n!/((n-2)!2!) ラウンド ロビンの組み合わせを生成できる SQL クエリはどれですか?
Person のカーディナリティは常に 4 に等しいと想定されています
人物の例 = {'Anna','Jerome','Patrick','Michael')
出力:
Anna, Jerome
Anna, Patrick
Anna, Michael
Jerome, Patrick
Jerome, Michael
Patrick, Michael
どんな助けでも大歓迎です。ありがとう!
これが私の答えです(私はOracle SQLを使用しました):
select P1.NAME PERSON1, P2.NAME PERSON2
from (select rownum RNUM, NAME
from PERSON) P1,
(select rownum RNUM, NAME
from PERSON) P2
where P1.RNUM < P2.RNUM