PostgreSQL
 sql >> Base de données >  >> RDS >> PostgreSQL

Comment puis-je accélérer un diff entre les tables ?

Dans les déclarations ci-dessus, vous n'utilisez pas les index.

Vous pourriez faire quelque chose comme :

SELECT * FROM tableA a
  FULL OUTER JOIN tableB b ON a.someID = b.someID

Vous pouvez ensuite utiliser la même instruction pour montrer quelles tables ont des valeurs manquantes

SELECT * FROM tableA a
  FULL OUTER JOIN tableB b ON a.someID = b.someID
  WHERE ISNULL(a.someID) OR ISNULL(b.someID)

Cela devrait vous donner les lignes qui manquaient dans le tableau A OU le tableau B