Oracle Database テーブル同士の差分を取得する
- 作成日 2023.05.08
- Oracle Database
- Oracle Database
![Oracle Database テーブル同士の差分を取得する](https://mebee.info/wp-content/uploads/2022/01/oracle-890x500.png)
Oracle Databaseで、テーブル同士の差分を取得する手順を記述してます。「MINUS」で対象のテーブルをSELECTした結果で可能です。ここでは、実際に実行した結果を画像で掲載してます。
環境
- OS windows11 home
- Oracle Database 21c Express Edition
- SQL Developer 21.2.1.204
手順
テーブル同士の差分を取得するには、「MINUS」を使用します。
SELECT * FROM テーブル1;
MINUS
SELECT * FROM テーブル2;
実際に、以下の2つのテーブル「SAMPLE」から「SAMPLE2」との差分を取得してみます。
テーブル「SAMPLE」
![](https://mebee.info/wp-content/uploads/2022/01/image-295.png)
テーブル「SAMPLE2」
![](https://mebee.info/wp-content/uploads/2022/01/image-296.png)
取得してみます。
SELECT * FROM SAMPLE
INTERSECT
SELECT * FROM SAMPLE2;
実行結果を見ると、差分が取得できていることが確認できます。
![](https://mebee.info/wp-content/uploads/2022/01/image-300.png)
テーブルの順序を逆にすると、「SAMPLE2」から「SAMPLE」の差分が取得できます。
SELECT * FROM SAMPLE
MINUS
SELECT * FROM SAMPLE2;
実行結果
![](https://mebee.info/wp-content/uploads/2022/01/image-301.png)
型違い
比較カラムの方が違う場合は、エラーとなります。
ORA-01790: 式には対応する式と同じデータ型を持つ必要があります
01790. 00000 - "expression must have same datatype as corresponding expression"
*Cause:
*Action:
行1 列8でエラー
-
前の記事
Finder コンピューターのフォルダを開くショートカットキー 2023.05.06
-
次の記事
googleドライブ内のファイルのMINEタイプを取得する 2023.05.08
コメントを書く