| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 4744 人关注过本帖
标题:请教 select 纵向记录转横向 语句
只看楼主 加入收藏
皇火
Rank: 1
等 级:新手上路
帖 子:14
专家分:0
注 册:2022-3-14
结帖率:33.33%
收藏
 问题点数:0 回复次数:5 
请教 select 纵向记录转横向 语句
如何将select distinct BH from NAME 查询结果直接从纵向转为横向,例如下表是一般查询结果
XY1
ABC
103
现希望用一条select语句,将3行合并在一个字段中,如: “XY1 ABC 103” 或 “XY1/ABC/103”
先谢为盼
搜索更多相关主题的帖子: 语句 记录 横向 纵向 select 
2022-11-03 04:33
my2318
Rank: 7Rank: 7Rank: 7
等 级:贵宾
威 望:14
帖 子:289
专家分:640
注 册:2014-3-18
收藏
得分:0 
数据处理方法决定了只能采用编程方法实现
2022-11-11 13:44
stan112
Rank: 1
等 级:新手上路
帖 子:1
专家分:0
注 册:2022-11-21
收藏
得分:0 
CREATE TABLE #T (testName NVARCHAR(32))
INSERT INTO #T VALUES('aa'),('bb'),('cc')

select STUFF((SELECT '/'+testName from
(
SELECT testName FROM #T  
)A
FOR XML PATH('')),1,1,'')

DROP TABLE #T
2022-11-21 11:19
皇火
Rank: 1
等 级:新手上路
帖 子:14
专家分:0
注 册:2022-3-14
收藏
得分:0 
谢谢楼上的回复。
这个问题我用select * from 表 PIVOT (...) 解决了,要注意的一点是:语句中尽量用表的别名,直接用表名会出错。
2022-11-23 10:19
dfasg12
Rank: 1
等 级:新手上路
帖 子:2
专家分:0
注 册:2022-12-1
收藏
得分:0 
招远程办公资深DBA工程师,薪资35-52K!有兴趣联系Telegram:@w4262
2022-12-01 14:16
simmety
Rank: 1
等 级:新手上路
帖 子:2
专家分:0
注 册:2023-2-21
收藏
得分:0 
CREATE TABLE #T (testName NVARCHAR(32))
INSERT INTO #T VALUES('aa'),('bb'),('cc')

select STUFF((SELECT '/'+testName from
(
SELECT testName FROM #T  
)A
FOR XML PATH('')),1,1,'')

DROP TABLE #T
2023-02-21 09:15
快速回复:请教 select 纵向记录转横向 语句
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.027856 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved