Den Union-Ansatz würde ich auch wählen, ich verstehe die Aufgabe so, dass alle Konten herausgefunden werden sollen, egal ob sie als Konto oder als Gegenkonto verwendet wurden.
Allerdings kann man sich hier den Subselect sparen, da der Union als default ein UNION DISTINCT ist.
SQL-Code:
select distinct konto from tbl_buchhaltung
union
select gegenkonto from tbl_buchhaltung