我有一份工会声明:
SELECT MAX(col + 1) FROM
(SELECT col FROM table_1
UNION ALL
SELECT col FROM table_2) AS alias
我想将此声明作为插入的一部分包括在内。
INSERT INTO table(col_1, col_2, col_3, col_4) VALUES(x, y, (the union statement), z)
有谁知道如何实现这一目标?
答案 0 :(得分:1)
在您的选择查询中也包括其他列(x,y)。如果x,y是静态值,那么您可以直接添加该值,否则您可以更改查询以包含其他x,y列。
INSERT INTO table(col_1, col_2, col_3)
SELECT x, y,MAX(col + 1) ,z
FROM (SELECT col FROM table_1
UNION ALL
SELECT col FROM table_2
) AS alias
答案 1 :(得分:0)
我刚刚使用了你提供的脚本并且它有效。
INSERT INTO table(col_1, col_2, col_3, col_4) VALUES(x, y, (SELECT MAX(col +1) FROM
(SELECT col FROM table_1
UNION ALL
SELECT col FROM table_2) AS alias), z)
当你提出这个简单的陈述时,你有任何错误吗?