直積2 単一テーブルでのCROSS JOIN

■直積は、単一テーブルの各列間でも取得することができる。

f:id:akCs:20210326114436p:plain

meetingsテーブル

上記テーブルから、meetingとpersonの直積を求める

 

SELECT DISTINCT m1.meeting,m2.person FROM meetings m1 CROSS JOIN meetings m2

f:id:akCs:20210326114813p:plain

本来の直積はDistinct無しで以下の様なデータになるが、

直積としてほしいのは、Personと重複しない全IDの直積なのでDistinct

f:id:akCs:20210326114922p:plainf:id:akCs:20210326114959p:plainf:id:akCs:20210326115121p:plain