🎵

SQLの差分を比較する

に公開

概要

SQLのクエリを修正したり、リファクタリングしたりする時に、結果が変わらないことを担保したい時に用いる方法の一つを紹介します。結果をCSVでダウンロードせずに、SQLエディタ上でリファクタリングしたい時に、使ってみたい方法です。

やり方

-- 修正前のクエリ
(SELECT * FROM users WHERE age >= 20)
EXCEPT
-- 修正後のクエリ 
(SELECT * FROM users WHERE age BETWEEN 20 AND 120);

-- 左右を入れ替えて再度チェック
(SELECT * FROM users WHERE age BETWEEN 20 AND 120)
EXCEPT  
(SELECT * FROM users WHERE age >= 20);

Discussion