在另一个表中,具有多行作为逗号分隔字段的Sql表
本文关键字:分隔 字段 Sql 另一个 | 更新日期: 2023-09-27 17:50:34
可能重复:
SQL Server:我可以用逗号将多行分隔成一列吗?
这可能吗?我有一个临时表,可以有很多行,例如:
interaction type name points
6 India 50
8 India 100
在我的主表类别表中,我有一个名为HintText 的字段
如何将这些行设置为HintText=6,India,50|6,India100?
到目前为止我的代码是:
UPDATE #CategoriesTable
SET HintText = t.Name + ',' + t.Points + ',' + t.interactiontype
FROM #CategoriesTable
INNER JOIN #temp1 t ON t.userId = #CategoriesTable.UserId
WHERE t.userId = #CategoriesTable.UserId
在我的存储过程中:
HintText nvarchar(256),
在我的存储库中:
trainingModuleProgressState.HintText = row["HintText"].ToString();
在我的数据模型中:
public string HintText { get; set; }
这将给我一排,我如何才能进入第二排?
我想您想要MySQL中类似GROUP_CONCAT
的东西。不幸的是,在SQL Server中似乎没有简单的方法可以做到这一点。这是关于它的众多讨论之一。
MySQL GROUP_CONCAT
看起来像:(我知道语法是100%(
UPDATE #CategoriesTable
SET HintText = (SELECT GROUP_CONCAT(t.Name + ',' + t.Points + ',' + t.interactiontype)
FROM #temp1 t
WHERE t.userId = #CategoriesTable.UserId)