我可以在这个 UNION 中添加一个新的自增列吗?
Can I add a new auto-increment column to this UNION?
我正在尝试连接两个 table 以获取来自两个 table 的所有数据。
我设法联合了两个 table,但我需要添加一个自动递增的 ID 作为我正在创建的新 table 的主键。
我不知道该怎么做,也找不到将其添加到查询中的方法。
CREATE TABLE NEWTABLE
SELECT T1.TEXT as TEXT
[...]
FROM TABLE1 T1
LEFT JOIN TABLE2 T2
on T1.TEXT = T2.TEXT
UNION
SELECT T2.TEXT as TEXT
FROM TABLE1 T1
[...]
RIGHT JOIN TABLE2 T2
on T1.TEXT = T2.TEXT
您需要将列定义放在 CREATE TABLE
语句中以添加 id
列。然后在 SELECT
查询中提供 NULL
作为它的值。
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
我正在尝试连接两个 table 以获取来自两个 table 的所有数据。
我设法联合了两个 table,但我需要添加一个自动递增的 ID 作为我正在创建的新 table 的主键。
我不知道该怎么做,也找不到将其添加到查询中的方法。
CREATE TABLE NEWTABLE
SELECT T1.TEXT as TEXT
[...]
FROM TABLE1 T1
LEFT JOIN TABLE2 T2
on T1.TEXT = T2.TEXT
UNION
SELECT T2.TEXT as TEXT
FROM TABLE1 T1
[...]
RIGHT JOIN TABLE2 T2
on T1.TEXT = T2.TEXT
您需要将列定义放在 CREATE TABLE
语句中以添加 id
列。然后在 SELECT
查询中提供 NULL
作为它的值。
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