Data Science & ML

SQL Joinsと高度なクエリ

INNER JOIN、LEFT/RIGHT JOIN、CROSS JOIN、CTE、window functions、ネストされたクエリ、最適化

22 面接問題·
Mid-Level
1

両方のテーブルに一致する行のみを返すJOINの種類はどれですか?

回答

INNER JOINは、両方のテーブルに一致する行のみを返します。左側のテーブルの行が右側のテーブルに一致するものがない場合(またはその逆)、その行は結果から除外されます。これは最も制限的で、関連データを結合するために最も一般的に使用されるJOINの種類です。

2

右側のテーブルに一致するものがない場合、LEFT JOINの結果はどうなりますか?

回答

LEFT JOINは、右側のテーブルに一致するものがない場合でも、左側のテーブルのすべての行を保持します。その場合、右側のテーブルの列はNULL値で埋められます。これにより、メインテーブルのデータの整合性を保ちながら、オプションの情報を追加することができます。

3

JOINを使用して注文をしていない顧客を見つけるにはどうすればよいですか?

回答

一致しないレコードを見つけるには、LEFT JOINに続けて右側のテーブルの列に対するWHEREフィルタ IS NULL を使用します。この手法は、注文テーブルを複数回スキャンしないため、NOT INサブクエリよりもパフォーマンスが高くなります。これは孤立データを検出するための古典的なパターンです。

4

CROSS JOINは結果として何を生成しますか?

5

SELF JOINとは何ですか?どのような場合に使用しますか?

+19 面接問題

次の面接に向けてData Science & MLをマスター

すべての問題、flashcards、技術テスト、コードレビュー演習、面接シミュレーターにアクセス。

無料で始める