Write a SQL query to compare expected versus actual data after a migration.
Compare every record key in the expected and actual datasets. The result should identify matching records, changed values, records missing from the actual dataset, and unexpected actual records. Comparisons must treat two NULL values as equal.
record_key, expected and actual values, and comparison_result.match, mismatch, missing_actual, and unexpected_actual results.record_key ascending.| Column | Type | Description |
|---|---|---|
| record_keyPK | VARCHAR(20) | Stable identifier expected after migration |
| status | VARCHAR(20) | Expected record status |
| amount | NUMERIC(12,2) | Expected monetary value |
| updated_at | DATE | Expected last update date |
| Column | Type | Description |
|---|---|---|
| record_keyPK | VARCHAR(20) | Stable identifier produced by migration |
| status | VARCHAR(20) | Actual migrated record status |
| amount | NUMERIC(12,2) | Actual migrated monetary value |
| updated_at | DATE | Actual migrated last update date |