如何在select中将多个记录分配到sql中的一个参数中

时间:2016-03-23 22:51:40

标签: sql sql-server

有谁知道如何将select中的多个记录分配到sql中的一个参数?例如:

我有以下select语句:

SELECT '|'+id+':'+rep
FROM dbo.reps

它将返回以下结果:

|1:tom
|2:amy
|3:ben
|4:ken

如何将这些值分配到参数@rep中,当我选择@rept时,它将显示:

| 1:汤姆| 2:阿美| 3:本| 4:肯

会有可能吗?

1 个答案:

答案 0 :(得分:0)

一种方法是使用聚合字符串连接(ala XML),但这在SQL Server中很麻烦。另一种是使用递归CTE。

最简单的方法是:

indexOf

我不确定是否支持保证(我没有看到明确说明是或否的文档),但它通常在SQL Server中有效。