Note that there are some explanatory texts on larger screens.

plurals
  1. PO
    primarykey
    data
    text
    <p>You could create a union query such as:</p> <pre> SELECT Table2.Key1, Table2.Key2, Table2.Key3, CASE WHEN Table1.Value1 &lt;&gt; Table2.Value1 THEN 'Value1' END AS DifferingFields FROM Table2 LEFT JOIN Table1 ON Table2.Key1 = Table1.Key1 AND Table2.Key2 = Table1.Key2 AND Table2.Key3 = Table1.Key3 WHERE Table1.Value1 &lt;&gt; Table2.Value1 UNION ALL SELECT Table2.Key1, Table2.Key2, Table2.Key3, CASE WHEN Table1.Value2 &lt;&gt; Table2.Value2 THEN 'Value2' END FROM Table2 LEFT JOIN Table1 ON Table2.Key1 = Table1.Key1 AND Table2.Key2 = Table1.Key2 AND Table2.Key3 = Table1.Key3 WHERE Table1.Value2 &lt;&gt; Table2.Value2 UNION ALL SELECT Table2.Key1, Table2.Key2, Table2.Key3, CASE WHEN Table1.Value3 &lt;&gt; Table2.Value3 THEN 'Value3' END FROM Table2 LEFT JOIN Table1 ON Table2.Key1 = Table1.Key1 AND Table2.Key2 = Table1.Key2 AND Table2.Key3 = Table1.Key3 WHERE Table1.Value3 &lt;&gt; Table2.Value3 [... add statements for the remaining value fields ...] </pre> <p>This will return the values of the 3 key fields, with the names of the fields that are contain differing values.</p> <p>For Microsoft Access, use:</p> <pre> SELECT Table2.Key1, Table2.Key2, Table2.Key3, IIF(Table1.Value1 &lt;&gt; Table2.Value1,"Value1","") AS DifferingFields FROM Table2 LEFT JOIN Table1 ON Table2.Key1 = Table1.Key1 AND Table2.Key2 = Table1.Key2 AND Table2.Key3 = Table1.Key3 WHERE Table1.Value1 &lt;&gt; Table2.Value1 UNION ALL SELECT Table2.Key1, Table2.Key2, Table2.Key3, IIF(Table1.Value2 &lt;&gt; Table2.Value2, "Value2","") FROM Table2 LEFT JOIN Table1 ON Table2.Key1 = Table1.Key1 AND Table2.Key2 = Table1.Key2 AND Table2.Key3 = Table1.Key3 WHERE Table1.Value2 &lt;&gt; Table2.Value2 UNION ALL SELECT Table2.Key1, Table2.Key2, Table2.Key3, IIF(Table1.Value3 &lt;&gt; Table2.Value3, "Value3","") FROM Table2 LEFT JOIN Table1 ON Table2.Key1 = Table1.Key1 AND Table2.Key2 = Table1.Key2 AND Table2.Key3 = Table1.Key3 WHERE Table1.Value3 &lt;&gt; Table2.Value3 </pre> <p>If you consider the following data: </p> <p>Table1:<br> Key1 Key2 Key3 Value1 Value2 Value3<br> 1 2 3 4 5 6<br> 1 2 4 4 5 8<br> 1 2 5 4 5 10<br> 1 2 6 4 6 10 </p> <p>Table2:<br> Key1 Key2 Key3 Value1 Value2 Value3<br> 1 2 3 4 5 7<br> 1 2 4 4 5 9<br> 1 2 5 4 5 11<br> 1 2 6 4 5 11 </p> <p>You get results as:<br> Key1 Key2 Key3 DifferingFields<br> 1 2 6 Value2<br> 1 2 3 Value3<br> 1 2 4 Value3<br> 1 2 5 Value3<br> 1 2 6 Value3 </p>
    singulars
    1. This table or related slice is empty.
    plurals
    1. This table or related slice is empty.
    1. This table or related slice is empty.
    1. This table or related slice is empty.
 

Querying!

 
Guidance

SQuiL has stopped working due to an internal error.

If you are curious you may find further information in the browser console, which is accessible through the devtools (F12).

Reload