Anda dapat menyediakan default sebagai konstanta dalam pernyataan pilih untuk kolom di mana Anda tidak memiliki data;
jadi
SELECT Date, User, Amount, 'NotApplicable' as Who, 'NotApplicable' as What from t1 where user = 'me'
UNION
SELECT Date, User, Amount, Who, 'NotApplicable' from t2 where user = 'me'
UNION
SELECT Date, User, Amount, 'NotApplicable', What from t3 where user = 'me'
yang mengasumsikan bahwa Who And What adalah kolom tipe string. Anda juga bisa menggunakan Null, tetapi diperlukan semacam placeholder.
Saya pikir menempatkan informasi tambahan Anda di tabel terpisah dan menyimpan semua transaksi dalam satu tabel akan bekerja lebih baik untuk Anda, kecuali ada beberapa detail lain yang saya lewatkan.