BBH
-Biz Branding Hub-
投稿日 : 
2019/12/03
更新日 : 
2019/12/03

【SQL】組み合わせの表示SQLのサンプル

以下の表に対して、様々な組み合わせパターンを表示するSQLを投げていきます。

生徒のペアのパターンを出すSQL(順序考慮あり)

任意の生徒のペアの組み合わせを表示します。
順序を考慮し、また同じ生徒の組み合わせもありとしています。

-- 全ての列の組み合わせを表示するSQL
SELECT p1.student_name, p2.student_name
FROM practice2_student_mst p1
CROSS JOIN practice2_student_mst p2;

異なる生徒のペアを表示するSQL

異なる任意の生徒を二人選ぶ際の組み合わせのパターンを表示するSQLです。
こちらも順序を考慮しています。

SELECT p1.student_name, p2.student_name
FROM practice2_student_mst p1
INNER JOIN practice2_student_mst p2
ON p1.student_name <> p2.student_name;

順序を考慮しないパターン

順序を考慮せず、純粋な組み合わせのパターンを表示するSQLです。

SELECT p1.student_name, p2.student_name
FROM practice2_student_mst p1
INNER JOIN practice2_student_mst p2
ON p1.student_name < p2.student_name;

Profile

管理人プロフィール

都内でITエンジニアをやってます。
変遷:中規模SES→独立系SIer→Webサービス内製開発
使用技術はその時々でバラバラですが、C#、AWSが長いです。
どちらかと言うとバックエンドより開発が多かったです。
顧客との折衝や要件定義、マネジメント(10名弱程度)の経験あり。
最近はJava+SpringBootがメイン。

Recommend