我可以向此 UNION 添加新的自增列吗?

Exc*_*ion 5 mysql auto-increment

I\xe2\x80\x99m 尝试连接两个表以获取两个表中的所有数据。

\n

我设法对两个表进行 UNION,但我需要添加一个具有自动增量的 ID 作为 I\xe2\x80\x99m 创建的新表的主键。
\n我不知道该怎么做,并且无法\xe2\x80\x99找到将其添加到查询中的方法。

\n
CREATE TABLE NEWTABLE\nSELECT T1.TEXT as TEXT\n       [...]\n       FROM TABLE1 T1\n       LEFT JOIN TABLE2 T2\n            on T1.TEXT = T2.TEXT\nUNION\nSELECT T2.TEXT as TEXT\n       FROM TABLE1 T1\n       [...]\n       RIGHT JOIN TABLE2 T2\n            on T1.TEXT = T2.TEXT\n
Run Code Online (Sandbox Code Playgroud)\n

Bar*_*mar 3

您需要将列定义放入CREATE TABLE语句中以添加id列。然后在查询NULL中提供它的值SELECT

CREATE TABLE NEWTABLE (
    id INT PRIMARY KEY NOT NULL AUTO_INCREMENT,
    text TEXT,
    [...]
) AS
SELECT null, T1.TEXT
       [...]
FROM TABLE1 T1
LEFT JOIN TABLE2 T2
    on T1.TEXT = T2.TEXT
UNION
SELECT null, T2.TEXT as TEXT
FROM TABLE1 T1
[...]
RIGHT JOIN TABLE2 T2
    on T1.TEXT = T2.TEXT
Run Code Online (Sandbox Code Playgroud)