sql >> Database >  >> RDS >> Mysql

verschil tussen tabellen

Je zou een outer join kunnen proberen. U kunt bijvoorbeeld rijen vinden die aanwezig zijn in tabel first maar afwezig in tabel second zoals dit (niet getest):

SELECT first.a, first.b, first.c FROM first LEFT JOIN second USING(a,b,c) 
WHERE second.a IS NULL

De join geeft je een tabel met alle rijen die aanwezig zijn in first , zoals dit:

first.a first.b first.c second.a second.b second.c
   a1      b1     c1      NULL      NULL     NULL
   a2      b2     c2       a2       b2       c2

Nu hoef je alleen nog maar naar rijen te zoeken met second.a IS NULL om rijen te vinden die afwezig zijn in second .

De prestaties kunnen slecht zijn omdat u over alle kolommen moet deelnemen.



  1. mysql auto increment error

  2. Mysql reguliere expressie zoeken zonder herhalende tekens

  3. Gedeeltelijke unieke index maken met sqlalchemy op Postgres

  4. Primaire sleutel automatisch verhogen in SQL Server Management Studio 2012