Sql function 多行中的列合并为一行一列的方法

2023年 4月 17日 28.6k 0

复制代码 代码如下: CREATE TABLE tb(standards varchar(50), amount varchar(50), variation varchar(50),statuss varchar(50),Reason varchar(50)) insert into tb values('55','279','4','物量积压','加工人员设备不足;T排制作进度

复制代码 代码如下: CREATE TABLE tb(standards varchar(50), amount varchar(50), variation varchar(50),statuss varchar(50),Reason varchar(50)) insert into tb values('55','279','4','物量积压','加工人员设备不足;T排制作进度较慢;') insert into tb values('55','279','4','物量积压','部件人员不足;') insert into tb values('55','279','4','物量积压','跨间场地积压;图纸问题较多;') insert into tb values('56','300','4','物量积压','AAAA;') insert into tb values('56','300','4','物量积压','BBBB;') insert into tb values('56','300','4','物量积压','CCCC;') create function test(@standards varchar(100)) returns varchar(8000) as begin declare @re varchar(500) set @re = '' select @re = @re+','+Reason from tb where @standards=standards return (stuff(@re,1,1,'')) end 调用 复制代码 代码如下: select distinct standards,amount,variation,statuss,Reason = dbo.test('55') from tb where standards=55 select distinct standards,amount,variation,statuss,Reason = dbo.test('56') from tb where standards=56

相关文章

Oracle如何使用授予和撤销权限的语法和示例
Awesome Project: 探索 MatrixOrigin 云原生分布式数据库
下载丨66页PDF,云和恩墨技术通讯(2024年7月刊)
社区版oceanbase安装
Oracle 导出CSV工具-sqluldr2
ETL数据集成丨快速将MySQL数据迁移至Doris数据库

发布评论