1
1
下面是SQL Server的一个示例:
|
2
0
可以使用COALESCE将一列中的值转换为csv http://www.sqlteam.com/article/using-coalesce-to-build-comma-delimited-string 除非您不介意创建一个动态sql,它可以接受一个列名,然后在运行时相应地构建sql。 这仅适用于SQL Server。 |
3
0
这里有一种实现这种递归的方法(mssql) |
4
0
如果是Oracle,请检查stragg函数。
如果是MSSQL,请使用XML路径技巧
|
5
0
我想我要回答我自己的问题了,因为我真的找到了一种使用CURSOR的方法(我在思考中缺少的关键字…) ALTER FUNCTION [dbo].[GET_NOM_MEDECIN_REVISEURS] (@NoAs810 int) RETURNS NVARCHAR(1000) AS BEGIN IF @NoAs810 = 0 RETURN '' ELSE BEGIN DECLARE @NomsReviseurs NVARCHAR(1000) DECLARE @IdReviseurs AS TABLE(IdReviseur int) DECLARE @TempNomReviseur NVARCHAR(50) SET @NomsReviseurs = '' DECLARE CurReviseur CURSOR FOR SELECT DISTINCT Nom FROM T_Ref_Reviseur R INNER JOIN T_Signature S ON R.IdReviseur = S.idReviseur WHERE NoAs810 = @NoAs810 OPEN CurReviseur FETCH FROM CurReviseur INTO @TempNomReviseur WHILE @@FETCH_STATUS = 0 BEGIN SET @NomsReviseurs = @NomsReviseurs + @TempNomReviseur FETCH NEXT FROM CurReviseur INTO @TempNomReviseur IF @@FETCH_STATUS = 0 SET @NomsReviseurs = @NomsReviseurs + ' - ' END CLOSE CurReviseur RETURN @NomsReviseurs END RETURN '' END |
Community wiki · SQL语法新手 1 年前 |
KateMak · 是否将多行中的多列与唯一id组合? 1 年前 |
Karuna · SQL中列内的筛选器[重复] 1 年前 |
Irvan Affandy · 为另一个选择选择声明的键 1 年前 |
Community wiki · 这个MySQL语句出了什么问题? 1 年前 |
Community wiki · 优化从同一表中提取的多列的查询 1 年前 |