附加查询

时间:2012-06-18 14:22:52

标签: mysql sql ms-access

快速技术问题 -

我有两个查询输出一些相同的数据。例如,假设两个查询都有X列和Y列,每个查询都有一行,每列都有一些数据。因此,我们在每个查询中都有单元格X1和单元格Y1。

我如何附加两个查询,以便仍然有两列,X和Y,但是两行?

谢谢

3 个答案:

答案 0 :(得分:6)

您可以使用UNION

  

UNION用于组合多个SELECT语句的结果   到一个结果集。

mysql:http://dev.mysql.com/doc/refman/5.6/en/union.html (它也支持Access)

答案 1 :(得分:4)

您可以使用UNION,但请记住列数必须相同:

mysql> select * from test_big;
+-------------+
| id          |
+-------------+
|          10 |
|          11 |
|   123456789 |
|  1234567890 |
| 12345678901 |
+-------------+
5 rows in set (0.00 sec)

mysql> select * from test;
+----+------+
| id | name |
+----+------+
|  0 | a    |
|  2 | 3    |
|  3 | none |
|  6 |      |
|  9 | a    |
| 11 | a    |
| 50 | a    |
+----+------+
7 rows in set (0.00 sec)

mysql> select * from test_big union select * from test;;
ERROR 1222 (21000): The used SELECT statements have a different number of columns
ERROR: 
No query specified

但您可以使用相同数量的列修复它

mysql> select * from test_big union select id from test;
+-------------+
| id          |
+-------------+
|          10 |
|          11 |
|   123456789 |
|  1234567890 |
| 12345678901 |
|           0 |
|           2 |
|           3 |
|           6 |
|           9 |
|          50 |
+-------------+
11 rows in set (0.00 sec)

答案 2 :(得分:1)

[Your first query]

UNION

[Your second query]