sql >> Databasteknik >  >> RDS >> PostgreSQL

Hur kan jag snabba upp en skillnad mellan tabeller?

I påståendena ovan använder du inte indexen.

Du kan göra något som:

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

Du kan sedan använda samma sats för att visa vilka tabeller som saknade värden

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

Detta bör ge dig de rader som saknades i tabell A ELLER tabell B



  1. Reguljärt uttryck för validering av SQL Server-tabellnamn

  2. mysql | Begäran från tom kolumn och FIND_IN_SET

  3. Oracles brist på en Bit-datatyp för tabellkolumner

  4. Att använda kolumnalias i WHERE-satsen i MySQL-frågan ger ett fel