连接具有共同列名但没有相关数据的两个表

Join two tables with common column names but no related data

一张图片胜过1000字,就到这里吧。我如何制作 SQL 语句来生成下面的 table?

换句话说,两个不同的 table(收入和支出)共享列名,但每个 table 中的行是不相关的。在这种情况下,来自给定用户的收入交易与支出交易无关,即使它来自同一用户。

我想将这两个 table 连接成一个 table,这样两个 table 的所有列都会出现,但是 (1) 公共 table名称被“合并”并且 (2) 保留每行数据的不相关性,这样来自一个 table 的不同 table 名称在连接到来自另一个 table 的行时为 NULL。

我想你要找的是像下面这样的 UNION 查询

select userid, username, incomeid, incomeamount, null as ExpenseID, null as expenseAmount
from table1
union
select userid, username, null as incomeid, null as incomeamount, null as ExpenseID, null as expenseAmount
from table2