mysql中,使用union怎么把两个表的列都列出来
时间: 2024-02-27 19:57:21 浏览: 136
mysql嵌套查询和联表查询优化方法
可以使用`UNION`操作符将两个表的数据合并到一个结果集中,但是要求两个表的列数和列类型必须相同,否则会导致语法错误。可以使用`NULL`填充不匹配的列,如下所示:
```
SELECT column1, column2, NULL as column3 FROM table1
UNION
SELECT column1, NULL as column2, column3 FROM table2;
```
以上语句将`table1`表和`table2`表中的`column1`和`column2`列合并到一个结果集中,并使用`NULL`填充不匹配的列,如果需要包含所有列,可以使用`UNION ALL`操作符,如下所示:
```
SELECT column1, column2, NULL as column3 FROM table1
UNION ALL
SELECT column1, NULL as column2, column3 FROM table2;
```
以上语句将`table1`表和`table2`表中的所有列合并到一个结果集中,且不去重。
阅读全文