重複レコードが結果出力されたら LEFT JOIN / INNER JOIN を疑おう
SQL にて、重複レコードが結果出力されたら LEFT JOIN / INNER JOIN を疑おうという話をご紹介します。
背景 期待して無い重複レコードが出力
Google BigQuery でクエリを実行した結果、期待して無い重複レコードが出力されたので、
- 各 table に保存されているデータの確認
- SQL が間違ってないか確認
という手順で確認したところ LEFT JOIN
を利用している箇所に問題を見つけました。
重複レコード問題の解決方法
重複レコード問題の解決方法については、以下の記事を参考にしてください。
重複レコード問題に出くわしたら、まず JOIN を疑いましょう。
- sqlのテーブル結合(left join)時の注意点 ー表で解説ー – Qiita
- LEFT JOIN / INNER JOIN を実行すると同じ内容のレコードが複数含まれる : SQL構文 | iPentec
- 【SQL】検索結果の数値が2倍になる(重複)件について – 30代半ばの事務職員がITエンジニアになった話
以上、SQL にて、重複レコードが結果出力されたら LEFT JOIN / INNER JOIN を疑っていきたい、現場からお送りしました。