データサイエンス

知って得したQUALIFY句-サブクエリ削減!スッキリ!-

使い方

使うデータ:salesテーブル

やりたいこと

↓カテゴリごとに売上が1位の製品だけを取得したい

QUALIFY句を使用したクエリ

何が良いのか?

上の画像と下の画像(従来のクエリ)を見比べてみてください。

従来のものと比べて、QUALIFY句を使用したクエリにはサブクエリがありません。
つまり、QUALIFY句を使えばWITH句を削減できるわけです!
ネストを減らせるので可読性が上がります。そして何よりも楽!早い!

実は最近になってQUALIFY句を知りましたが、今後も使える場面がたくさんありそうです。特に、ROW_NUMBERやRANKと組み合わせて使う機会が多いと思います。

備考

以前はQUALIFYはWHERE,GROUP BY,HAVINGのどれかと併用する必要があったみたいですが、2022年5月末時点ではそれらがなくても動きました。

参考

 

Y.K
アナリティクス&デベロップメント所属。雪国出身。