sql >> Base de Datos >  >> RDS >> PostgreSQL

¿Cómo puedo acelerar una diferencia entre tablas?

En las declaraciones anteriores, no está utilizando los índices.

Podrías hacer algo como:

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

Luego podría usar la misma declaración para mostrar qué tablas tenían valores faltantes

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

Esto debería proporcionarle las filas que faltaban en la tabla A O en la tabla B