您的位置:首页 > 数据库

SQL合并统一数据(相同的在一行显示)

2014-09-01 17:27 471 查看
/*问题描述
表Library有字段         表EmployeeInfo  字段
LibraryId                         EmpId
EmpId
LibraryTitle
LibraryOwner                      Name

测试表Library数据为
insert into Library(EmpId,LibraryTitle,Name) values('001','规章制度','001')
insert into Library(EmpId,LibraryTitle,Name) values('001','公共信息','001,002,003')
测试表EmployeeInfo  数据为
insert into EmployeeInfo  (EmpId,Name) values('001','小王')
insert into EmployeeInfo  (EmpId,Name) values('002','小陈)
insert into EmployeeInfo  (EmpId,Name) values('003','小张')

有什么办法能在前台显示的时候显示为
EmpId  LibraryTitle   Name
001    规章制度       小王
001    公共信息       小王,小陈,小张
*/

create table Library(EmpId varchar(10),LibraryTitle varchar(10),Name varchar(30))
insert into Library(EmpId,LibraryTitle,Name)
values('001','规章制度','001')
insert into Library(EmpId,LibraryTitle,Name)
values('001','公共信息','001,002,003')
create table EmployeeInfo(EmpId varchar(10),Name varchar(10))
insert into EmployeeInfo  (EmpId,Name) values('001','小王')
insert into EmployeeInfo  (EmpId,Name) values('002','小陈')
insert into EmployeeInfo  (EmpId,Name) values('003','小张')
go

create function fn_tonytest(@name varchar(100))
returns varchar(100)
as
begin
select @name=replace(@name,EmpId,name) from EmployeeInfo
return @name
end
go

select EmpId,LibraryTitle,dbo.fn_tonytest(Name) Name
from Library
/*
EmpId  LibraryTitle  Name
001 规章制度 小王
001 公共信息 小王,小陈,小张
*/
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐