如何在SQL Server中将多行连接成一列?
发布时间:2021-04-03 09:37:48 所属栏目:MsSql教程 来源:网络整理
导读:我已经高低搜索了这个答案,但我无法弄明白.我对SQL Server比较陌生,但还没有很好的语法.我有这个数据结构(简化): Table "Users" | Table "Tags":UserID UserName | TagID UserID PhotoID1 Bob | 1 1 12 Bill | 2 2 13 Jane | 3 3 14 Sam | 4 2 2------------
|
我已经高低搜索了这个答案,但我无法弄明白.我对SQL Server比较陌生,但还没有很好的语法.我有这个数据结构(简化): Table "Users" | Table "Tags": UserID UserName | TagID UserID PhotoID 1 Bob | 1 1 1 2 Bill | 2 2 1 3 Jane | 3 3 1 4 Sam | 4 2 2 ----------------------------------------------------- Table "Photos": | Table "Albums": PhotoID UserID AlbumID | AlbumID UserID 1 1 1 | 1 1 2 1 1 | 2 3 3 1 1 | 3 2 4 3 2 | 5 3 2 | 我正在寻找一种方法来获取所有照片信息(简单)以及该照片的所有标签连接如CONCAT(用户名,’,’)AS标签当然删除了最后一个逗号.我有一段时间试图这样做.我在this article中尝试了这个方法,但是当我尝试运行查询说我不能使用DECLARE语句时出现错误…你们有什么想法可以做到这一点吗?我正在使用VS08和其中安装的任何数据库(我通常使用MySQL,所以我不知道这是什么类型的DB真的是……它是一个.mdf文件?) 解决方法我要创建一个UDF:create function GetTags(PhotoID int) returns @tags varchar(max)
as
begin
declare @mytags varchar(max)
set @mytags = ''
select @mytags = @mytags + ',' + tag from tags where photoid = @photoid
return substring(@mytags,3,8000)
end
然后,您所要做的就是: select GetTags(photoID) as tagList from photos (编辑:百科站长网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
相关内容
- sql – 使用多个JOINS. SUM()产生错误的值
- sql-server-2012 – 什么时候使用SQL Server Developer Edi
- sql-server – 在不生成新快照的情况下将文章添加到事务发布
- sql-server – 编写一个简单的银行模式:我应该如何使我的余
- sql-server – T-SQL:如何更新datetime字段的日期部分?
- iis-7 – .NET 3.5,IIS 7,SQL Server 2008托管
- sql – dba_jobs_running:尝试从过程访问时,表或视图不存在
- SQL Server怎样做分离与附加数据库的操作?
- sql-server – SQL Server镜像是否可靠(高可用性)?
- sql-server – 什么日期/时间文字格式是LANGUAGE和DATEFORM
站长推荐
热点阅读

