1、首先打开SQL SERVER管理工具,用select语句查询一下当前表的记录。
2、接下来需要通过row_number对表进行排序,将排序好的表存到临时表里面。
3、接下来编写update语句,这里用到了表关联,如下图所示,通过关联将临时表的排序字段重新赋值给表的排序字段。
4、然后记得要最后要删除临时表,如下图所示,如果不删除临时表的话下次会报错的。
5、执行SQL语句以后,你会发现记录中的PX字段值并没发生什么变化,如下图所示,这是由于排序方式的问题。
6、接下来在row_number中通过PX字段的降序方式进行排序,如下图所示,执行以后,你会发现PX字段的值发生了变化,即代表SQL合并显示两个没有关联的表成功。
如果是纵向合并使用union all
加入有两个表a和b
a表结构有两个字段date1,a2
b表有一个字段date1
select date1,a2 from (select date1,a2 from a
union all
select date1,null from b)
order by date1;
注意union all里面两个表字段数量必须一致,缺少的字段要用null补齐
排序必须在子查询外进行
where [a表的字段]=[b表的字段].如果没有办法具备这个条件,建议你还是重新构造数据逻辑结构吧.
可以实现where的情况下用排序条件设置排序. order by +升序或降序
使用union 或union all
如select * from a union all select * from b然后再嵌套一层查询对时间排序 order by