Comparer 2 tables en utilisant EXCEPT

EXCEPT en SQL permet d’extraire les différences entre 2 tables.

Exemple : 2 tables article avec des contenus différents


1) Extraire les lignes de ARTICLE qui ne sont pas dans ARTICLE2 :
SELECT * FROM article
EXCEPT
SELECT * FROM article2

Résultat : Casquette jaune

2) Extraire les lignes de ARTICLE2 qui ne sont pas dans ARTICLE :
SELECT * FROM article2
EXCEPT
SELECT * FROM article

Résultat : Beret noir

3) Il est possible de comparer sur une ou plusieurs colonnes choisies.
Par exemple, extraire les couleurs de ARTICLE2 qui ne sont pas dans ARTICLE :
SELECT couleur FROM article2
EXCEPT
SELECT couleur FROM article

Résultat : noir

A noter, il est possible de comparer 2 fichiers source avec EXCEPT :
1- OVRDBF FILE(SOURCE1) TOFILE(BIB1/QRPGSRC) MBR(PGM1)
2- OVRDBF FILE(SOURCE2) TOFILE(BIB2/QRPGSRC) MBR(PGM2)
3- SELECT * FROM source1 EXCEPT SELECT * FROM source2


Laisser un commentaire