MYSQl 联合查询失败

标签 mysql union

我有两个表A和B 我想将它们合并并存储到另一个表中;

CREATE TABLE  myspace.test (
(select * from A ) UNION ( select * from B) );

失败并报错

You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'CREATE TABLE myspace.test ( (select * from A ) UNION ( s' at line 1

但是查询:(select * from A) UNION (select * from B) 给出了正确的结果。

如何将联合结果存储到另一个表中??

谢谢阿尔曼。

编辑

好吧,玩了之后我发现:

  • 没有外括号的查询有效。

    创建表 myspace.test (从 A 中选择 *) UNION (从 B 中选择 *);

  • 添加 AS 并不能解决问题。

  • 我想知道带括号的查询运行良好似乎是 BUG 或者我可能遗漏了什么?

    创建表 myspace.test (从 A 中选择 *);

最佳答案

CREATE TABLE
        myspace.test
AS
SELECT  *
FROM    A
UNION
SELECT  *
FROM    B

关于MYSQl 联合查询失败,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5728947/

相关文章:

mysql - Node mysql连接池导出

php - 在选择子查询中选择 Doctrine 错误

sql - 如何在 UNIONS 之间的 SQL 中放置 ORDER BY 子句

mysql - 合并具有相同数据结构的两个表,然后连接到另一个表

java - 2个链表集之间的并集和交集,java

php - 通过内连接查找前 3 个值

php - MYSQL PID/SOCK 错误 - 我无法让我的 Mac El Capitan 与完整的 Web 服务器配合使用

php - 如何防止 PHP 中的 SQL 注入(inject)?

sql - 手动排序 concat 文本(不是 ASC 或 DESC)

mysql - MySQL 语句中的条件联合