Bonjour à tous,

Je sèche depuis quelques heures sur une comparaison entre deux tables, une archive et une prod. je cherche simplement à récupérer le delta entre la prod et l'archive. Donc :

SELECT * FROM table_prod; --> 780 000
SELECT * FROM table_archive --> 740 000
SELECT DISTINCT username FROM table_prod; --> 780 000
SELECT DISTINCT username FROM table_archive --> 740 000

Je m'attends donc à un delta de 40 000.

Ma requête :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
select count(*) from table_prod tp
where username not in
(select ta.username from table_archive ta);
--> 760 000 !

Il n'y a donc que 20 000 enregistrements à matcher entre les deux tables.
Les schémas sont identiques, la seule différence est la version de base : 10G d'un côté, 11G d'un autre.

Quelqu'un aurait-il une piste sur ce problème ?

Merci