=================================版权声明=================================
版权声明:原创文章 谢绝转载
请通过右侧公告中的“联系邮箱(wlsandwho@foxmail.com)”联系我
勿用于学术性引用。
勿用于商业出版、商业印刷、商业引用以及其他商业用途。
本文不定期修正完善。
本文链接:http://www.cnblogs.com/wlsandwho/p/5039358.html
耻辱墙:http://www.cnblogs.com/wlsandwho/p/4206472.html
=======================================================================
没啥说的,鄙视那些无视版权随意抓取博文的爬虫小网站,祝你们早升极乐。
=======================================================================
直接上问题
首先,事主的提问风格我还是很喜欢的,一目了然。
但是,就实际问题来讲,是不是2条就4列?如果有100条,岂不是爆炸了?
所以,实际上事主应该是想要一个水平显示的效果,而不是一定要有很多列。
不用说我是不是瞎猜的,我就是瞎猜的。哈哈哈。
上代码。
=======================================================================
1 --by wls 20151211 2 --网络代码有风险 3 --复制粘贴须谨慎 4 USE tempdb 5 GO 6 7 IF OBJECT_ID (N't_TestbyWLS', N'U') IS NOT NULL 8 DROP TABLE t_TestbyWLS; 9 GO 10 11 CREATE TABLE t_TestbyWLS(Author NVARCHAR(9),Caption NVARCHAR(50),ReadCount INTEGER) 12 GO 13 14 INSERT INTO t_TestbyWLS VALUES('WLS','Hello1',100) 15 INSERT INTO t_TestbyWLS VALUES('WLS','Hello2',100) 16 INSERT INTO t_TestbyWLS VALUES('thbytwo','Hello2',200) 17 INSERT INTO t_TestbyWLS VALUES('thbytwo','Hello1',220) 18 INSERT INTO t_TestbyWLS VALUES('wlsandwho','Hello1',220) 19 GO 20 21 SELECT * FROM t_TestbyWLS 22 GO 23 24 WITH TempCRC 25 AS 26 ( 27 SELECT Author,caption+' '+CAST(readcount AS NVARCHAR(20)) AS CRC FROM t_TestbyWLS 28 ) 29 ,TempXML 30 AS 31 ( 32 SELECT Author,(SELECT CRC+',' FROM TempCRC a WHERE a.author=b.author FOR XML PATH('') ) AS CRCXML FROM TempCRC B GROUP BY author 33 ) 34 SELECT author,LEFT(crcxml,LEN(crcxml)-1) AS NewCRCXML FROM TempXML 35 GO
运行结果。
执行计划。
=======================================================================
千万不要吐槽我的第二个CTE,那是没办法的事情。写了这么多SQL典型例子,大家见我哪次用子查询了?真是迫不得已。
=======================================================================
(友情支持请扫描这个)
微信扫描上方二维码捐赠