如何用union合并SQL查询的数据

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何用union合并SQL查询的数据相关的知识,希望对你有一定的参考价值。

SELECT * FROM 表 A WHERE id<2 UNION SELECT * FROM 表 A WHERE id >3;
主意:union前后的两个select的字段一定要一样,比如:
SELECT id,name FROM 表 A WHERE id<2 UNION SELECT id,name FROM 表 A WHERE id >3;
前一个select id,name查询id和name两个字段,后边的select也一定是查询id和name这两个字段。
如果还有其他的语句还可以在后边继续union。
参考技术A 是两表连接查询吧??

请教:SQL同一数据库中,两个查询结果数据类型不同时的union all 合并问题

请教:查询结果一:select 表1.字段1, 表1.字段2, 表1.字段3,from 表1 where。。。
查询结果二:select 表2.字段1, 表2.字段2, 表2.字段3,from 表2 where。。。
查询结果一中的类型全为varchar型,查询结果二中的类型:表2.字段1,其余为Numeric,
用union all怎样合并查询?

参考技术A select CAST(表2.字段1 AS VARCHAR(n), 表2.字段2, 表2.字段3,from 表2 where。。。

CAST(表2.字段1 AS VARCHAR(n) n的大小和表1.字段1的长度一致。追问

不好意思,写少了个字:
请教:查询结果一:select 表1.字段1, 表1.字段2, 表1.字段3,from 表1 where。。。
查询结果二:select 表2.字段1, 表2.字段2, 表2.字段3,from 表2 where。。。
查询结果一中的类型全为varchar型,查询结果二中的类型:表2.字段1为varchar型,其余表2.字段2/字段3为Numeric,
用union all怎样合并查询?

本回答被提问者和网友采纳
参考技术B union all不支持不同类型合并,尝试类型转化为相同的吧 参考技术C 通过cast(表2.字段2 as varchar)转换表2.字段2为varchar格式

以上是关于如何用union合并SQL查询的数据的主要内容,如果未能解决你的问题,请参考以下文章

sql 中如何用别名作为查询条件

如何用sql语句将多行合并成一行

sql 两表数据合并 union

如题:如何用一条SQL语句按输入的参数进行判断执行查询数据

sql 用union合并合并查询结果

请教:SQL同一数据库中,两个查询结果数据类型不同时的union all 合并问题