两张不相关的数据表横向拼接

在做报表的时候,需要把几张不相关的数据表进行横向拼接。

A表查询

select TagName,ValueString,EventStamp from Events WHERE TagName = 'SBSGX_1#GLQQT

两张不相关的数据表横向拼接_第1张图片
B表查询

select TagName,ValueString,EventStamp from Events WHERE TagName = 'SBSGX_2#GLQQT'

两张不相关的数据表横向拼接_第2张图片
A、B两表是从一个表中查询的

网上是用ROWNUM这个关键字来查询的,但ROWNUM是Oracle是特有的,其他数据库都没有
使用ROW_NUMBER()这个方法来查询表的行数

select A.Tagname,A.ValueString,A.EventStamp,B.TagName,B.ValueString,B.EventStamp from 
(select ROW_NUMBER() over(Order by EventStamp) RN,TagName,ValueString,EventStamp from Events WHERE TagName = 'SBSGX_1#GLQQT') A 
FULL JOIN 
(select ROW_NUMBER() over(Order by EventStamp) RN,TagName,ValueString,EventStamp from Events WHERE TagName = 'SBSGX_2#GLQQT') B 
ON A.RN = B.RN

两张不相关的数据表横向拼接_第3张图片

你可能感兴趣的:(数据库)