美图齐众专注资阳网站设计 资阳网站制作 资阳网站建设
资阳网站建设公司服务热线:028-86922220

网站建设知识

十年网站开发经验 + 多家企业客户 + 靠谱的建站团队

量身定制 + 运营维护+专业推广+无忧售后,网站问题一站解决

SQLServer数据库中如何合并表格数据

SQL Server数据库是如何合并表格数据的呢?其实SQL Server数据库合并表格数据是利用ROW_NUMBER来实现的,本文我们通过一个例子来介绍如何合并表格数据。我使用的数据库版本是SQL Server 2005,表格的原始数据如下:

这个一个学习和测试的记录,Type是类型(0学习,1测试)。一天中可能会学习多次,也可能会测试多次,学习次数和测试次数可能不一样。

想要的到得是,按日期列出当天学习和测试的记录。

类似这样的结果:(图中两行数据一样,是两种语言表示)

主要的SQL语句如下:

 
 
 
 
  1. select A.Date,A.MID,A.Contents1,B.Contents2,B.Passed from
  2. (select ROW_NUMBER() over(partition by Date order by Date) as MID,Date,Contents as Contents1 from History where Type=0 ) A
  3. left join 
  4. (select ROW_NUMBER() over(partition by Date order by Date) as MID,Date,Contents as Contents2,Passed from History where Type=1 ) B
  5. on A.Date=B.Date and A.MID=B.MID
  6. union
  7. select  B.Date,B.MID, A.Contents1,B.Contents2,B.Passed from
  8. (select ROW_NUMBER() over(partition by Date order by Date) as MID,Date,Contents as Contents1 from History where Type=0 ) A
  9. right join 
  10. (select ROW_NUMBER() over(partition by Date order by Date) as MID,Date,Contents as Contents2,Passed from History where Type=1) B
  11. on A.Date=B.Date and A.MID=B.MID

结果如下:

至此,表格的数据已经合并完毕了。

关于SQL Server数据库合并表格数据的知识就介绍到这里,如果您想了解更多关于SQL Server数据库的知识,可以看一下这里的文章:http://database./sqlserver/,相信一定会带给您收获的!


名称栏目:SQLServer数据库中如何合并表格数据
路径分享:http://www.zsjierui.cn/article/cdisodi.html

其他资讯