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 ...
随机推荐
- LSM Tree存储组织结构介绍
LSM Tree(Log Structured Merge Trees)数据组织方式被应用于多种数据库,如LevelDB.HBase.Cassandra等,下面我们从为什么使用LSM tree.LSM ...
- Cesium原理篇:4Web Workers剖析(2)
What's the WebWorkers? 2008 年 W3C 制定出第一个 HTML5 草案中提出了工作线程(Web Worker)的概念,并且规范出 Web Worker 的三大主要特征:能够 ...
- WebService入门案例
关于WebService的作用和好处,大家应该都了解.但如何在Asp.Net中添加Web Service等问题一直是新手朋友的一大难题.鉴于网上没有一个像样的实际案例,特将课程设计中运用到的WebSe ...
- 【面试】输出"蛇形"矩阵
一.题目描述 腾讯实习在线笔试的一道题目. 根据输入的数字(< 1000),输出这样的"蛇形"矩阵,如下.输入n,输出(n * n)阶矩阵,满足由外到内依次增大. 如: 输入 ...
- identity与ASP.NET 模拟
默认情况下,ASP.NET应用程序以本机的ASPNET帐号运行,该帐号属于普通用户组,权限受到一定的限制,以保障ASP.NET应用程序运行的安全.但是有时需要某个ASP.NET应用程序或者程序中的某段 ...
- WCF的Restful和TCP方式调用性能比较
1. 实验背景关于WCF提供分布式访问服务,最常用的两种方式Restful方式和Tcp方式,在本地测试了一把.结果显示,还是Rest方式,在压力测试下,性能最佳.而且处于跨平台的考虑,和自动化测试方便 ...
- EC笔记,第二部分:10.让=返回指向*this的引用
Effective C++ 学习笔记 10 让=返回指向*this的引用 Table of Contents 1. 原因 2. 建议:在没有充分理由标新立异前,最好的做法是遵从传统. –by SkyF ...
- 【Java每日一题】20161214
package Dec2016; import java.util.ArrayList; import java.util.List; public class Ques1214 { public s ...
- 对hashcode、equals的理解
1.首先hashcode和equals都是java每个对象都存在的方法,因为他们两是Object的方法. 2.hashcode方法默认返回的是该对象内存地址的哈希码,然而你会发现,Object类中没有 ...
- PrototypePattrn(原型模式)
/** * * @author TMAC-J * 原型模式,可以说是简化的工厂模式 * 与工厂模式的区别是工厂模式可以生产很多的产品,而原型模式仅仅是复制而已 * 这里有一个问题:深克隆和潜克隆的问题 ...