株式会社ブレインパッドプロダクトユニットでRtoaster GenAIの開発をしている依田です。 今回は「LATERAL句を使うと、複雑なサブクエリがシンプルに書ける」という話を、実行可能なサンプルSQLつきでお伝えします。 はじめに データ分析でよく出てくるクエリのパターンに、「各グループの最新レコードを1件取得したい」「各カテゴリの上位N件だけ取り出したい」というものがあります。 こういった処理を書こうとすると、ウィンドウ関数や相関サブクエリを使った複雑なSQLになりがちです。LATERAL句を使うと、FROM句の左側の行ごとにサブクエリを実行できます。そのため、意図がはっきりした読みやすいSQLを書けます。 この記事で学べること LATERAL句の仕組みと使いどころ LATERAL未使用 vs LATERAL使用でどれだけ可読性が変わるか CROSS JOIN LATERAL と L

