SQL Server 2008 R2——使用FOR XML PATH实现多条信息按指定格式在一行显示
=================================版权声明=================================
版权声明:原创文章 谢绝转载
请通过右侧公告中的“联系邮箱(wlsandwho@foxmail.com)”联系我
勿用于学术性引用。
勿用于商业出版、商业印刷、商业引用以及其他商业用途。
本文不定期修正完善。
本文链接:http://www.cnblogs.com/wlsandwho/p/5039358.html
耻辱墙:http://www.cnblogs.com/wlsandwho/p/4206472.html
=======================================================================
没啥说的,鄙视那些无视版权随意抓取博文的爬虫小网站,祝你们早升极乐。
=======================================================================
直接上问题
首先,事主的提问风格我还是很喜欢的,一目了然。
但是,就实际问题来讲,是不是2条就4列?如果有100条,岂不是爆炸了?
所以,实际上事主应该是想要一个水平显示的效果,而不是一定要有很多列。
aaarticlea/png;base64,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" alt="" />
不用说我是不是瞎猜的,我就是瞎猜的。哈哈哈。
上代码。
=======================================================================
--by wls 20151211
--网络代码有风险
--复制粘贴须谨慎
USE tempdb
GO IF OBJECT_ID (N't_TestbyWLS', N'U') IS NOT NULL
DROP TABLE t_TestbyWLS;
GO CREATE TABLE t_TestbyWLS(Author NVARCHAR(9),Caption NVARCHAR(50),ReadCount INTEGER)
GO INSERT INTO t_TestbyWLS VALUES('WLS','Hello1',100)
INSERT INTO t_TestbyWLS VALUES('WLS','Hello2',100)
INSERT INTO t_TestbyWLS VALUES('thbytwo','Hello2',200)
INSERT INTO t_TestbyWLS VALUES('thbytwo','Hello1',220)
INSERT INTO t_TestbyWLS VALUES('wlsandwho','Hello1',220)
GO SELECT * FROM t_TestbyWLS
GO WITH TempCRC
AS
(
SELECT Author,caption+' '+CAST(readcount AS NVARCHAR(20)) AS CRC FROM t_TestbyWLS
)
,TempXML
AS
(
SELECT Author,(SELECT CRC+',' FROM TempCRC a WHERE a.author=b.author FOR XML PATH('') ) AS CRCXML FROM TempCRC B GROUP BY author
)
SELECT author,LEFT(crcxml,LEN(crcxml)-1) AS NewCRCXML FROM TempXML
GO
运行结果。
执行计划。
=======================================================================
千万不要吐槽我的第二个CTE,那是没办法的事情。写了这么多SQL典型例子,大家见我哪次用子查询了?真是迫不得已。
=======================================================================
(友情支持请扫描这个)
微信扫描上方二维码捐赠
SQL Server 2008 R2——使用FOR XML PATH实现多条信息按指定格式在一行显示的更多相关文章
- SQL Server 2008 R2——使用FULL OUTER JOIN实现多表信息汇总
=================================版权声明================================= 版权声明:原创文章 谢绝转载 请通过右侧公告中的“联系邮 ...
- 安装 SQL Server 2008 R2 的硬件和软件要求(转)
以下各部分列出了安装和运行 SQL Server 2008 R2 的最低硬件和软件要求.有关 SharePoint 集成模式下的 Analysis Services 的要求的详细信息,请参阅硬件和软件 ...
- SQL Server 2008 R2 性能计数器详细列表(三)
原文:SQL Server 2008 R2 性能计数器详细列表(三) SQL Server,Deprecated Features 对象: 监视指定为不推荐使用的功能: SQL Server Depr ...
- SQL Server 2008 R2——学习/练习/错误/总结/搜集
==================================声明================================== 本文原创,转载在正文中显要的注明作者和出处,并保证文章的完 ...
- SQL Server 2008 R2 的版本和组件
SQL Server 2008 R2 的版本和组件 SQL Server 2008 R2 其他版本 SQL Server 2008 SQL Server 2005 SQL Server 2012 ...
- SQL Server 2008 R2 跟踪标志
原文:SQL Server 2008 R2 跟踪标志 跟踪标志用于临时设置特定服务器的特征或关闭特定行为.例如,如果启动 SQL Server 的一个实例时设置了跟踪标志 3205,将禁用磁带机的硬件 ...
- SQL Server 2008 R2 性能计数器详细列表(一)
原文:SQL Server 2008 R2 性能计数器详细列表(一) SQL Server Backup Device 计数器: 可监视用于备份和还原操作的 Microsoft SQL Server ...
- SQL Server 2008 R2 根据.asmx访问WebService
.asmx 都是.Net 同系列,所以学习的时候会比较简单. 方法一: 步骤1.在浏览器打开.asmx地址可以到方法列表, 步骤2.点进方法列表会有SOAP调用的案例, 步骤3.SQL Server ...
- 利用SQL Server 2008 R2创建自动备份计划
本文主要利用SQL Server 2008 R2自带的"维护计划"创建一个自动备份数据的任务. 首先,启动 Sql Management studio,确保"SQL Se ...
随机推荐
- Azure Application Gateway (1) 入门
<Windows Azure Platform 系列文章目录> 请读者注意,Azure Application Gateway在ASM模式下,只能通过PowerShell创建 具体可以参考 ...
- 关于jsp的内置对象request和response的重定向和转化(待补充)
请求重定向 1.客户端行为 2.response.sengRedirect(): 3.本质上讲,相当于请求两次 4.URL地址会改变 请求转发 1.服务器行为 2.response.getReques ...
- 用户反馈:对 Rafy 开发框架的一些个人建议
这篇文章是去年 Rafy 框架发布后,许胜平先生为我提出的一些建议.他从用户群体分析.社区.商业模式.技术支持等方面对框架发展提出了建议,我觉得写得非常不错.此文不仅适用于 Rafy 框架,所以不 ...
- .NET正则表达式基础入门(一)
字符组 正则表达式的字符组十分简单,就是列出你所想要匹配的字符.阅读本章前,建议先下载我于CSDN上传的示例代码,下载无需分数,下载链接. 1.普通字符组 普通字符组,列出所有你需要匹配的字符. 例如 ...
- 异步编程系列第02章 你有什么理由使用Async异步编程
p { display: block; margin: 3px 0 0 0; } --> 写在前面 在学异步,有位园友推荐了<async in C#5.0>,没找到中文版,恰巧也想提 ...
- WebApi设置SessionState为Required
public override void Init() { //在注册管道事件中 require session state //只能在引发“HttpApplication.AcquireReques ...
- spring aop配置出错
Multiple annotations found at this line: - schema_reference.4: Failed to read schema document 'http: ...
- 关于Spring/Hibernate 3.x升级4.x的小问题
情景: 之前版本 现在版本 JDK 1.7 1.8 Tomcat v7.0 v8.0 Spring 3.x 4.x Hibernate 3.x 4.x MySQL 忘了 5.1.53 分析: 如果 ...
- C语言: 预处理
1. 字符映射 键盘有多种标准规格,例如常用的IBM 104键盘标准,然而不是所有键盘都能打出像#这样的符号,因此C语言的预处理引入了字符映射机制.如果程序员要求,预处理会按照约定对源代码中的字符进行 ...
- 【转】php pdo连接数据库 解决中文乱码问题(wordpress mysql 问号?? ??)
原文链接:http://blog.csdn.net/ysydao/article/details/11002295 PHP 用pdo连接数据库时出现中文乱码问题解决办法 1.array(PDO::MY ...