2

我对将一张桌子合并到另一张桌子有点困惑。我的两张桌子看起来像这样:

Table A                                         Table B
id | name | likes | email | username            id | name | email   | username
1  | joe  |  3    |  null | null                1  | ben  | a@co.co | user


Result: Table A
id | name | likes | email   | username
1  | joe  | 3     | null    | null
2  | ben  | null  | a@co.co | user

我的问题是我不想覆盖表 A 中的属性。这很简单UNION吗?

4

1 回答 1

3

你可以只执行INSERT INTO..SELECT语句,

INSERT INTO TableA(id, name, likes, email, username)
SELECT id, name, NULL AS likes, email, username
FROM TableB

它的作用是将所有记录复制TableBTableA. 但是如果你只想要投影的记录,那么一个简单的UNION就可以了

SELECT id, name, likes, email, username FROM tableA
UNION
SELECT id, name, NULL AS likes, email, username FROM TableB
于 2013-04-17T01:50:49.257 回答