I don't know QGIS, but i'd suggest to use SQL, like this:
SELECT ColumnA, ColumnB, CASE
WHEN ColumnA = ColumnB THEN ColumnA
WHEN ColumnA <> ColumnB THEN -1
WHEN ColumnA IS NOT NULL AND ColumnB IS NULL THEN ColumnA
WHEN ColumnA IS NULL AND ColumnB IS NOT NULL THEN ColumnB
END AS ColumnC
FROM MyData;
Result:
ColumnA ColumnB ColumnC
1 2 -1
2 2 2
3 null 3
null 4 4
null null null
More at:
SQL Server 2022 | db<>fiddle[
^]
Is this helpful?