在Oracle SQL语句中构建以逗号分隔的值列表

前端之家收集整理的这篇文章主要介绍了在Oracle SQL语句中构建以逗号分隔的值列表前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我正在尝试从Oracle中的字段构建以逗号分隔的值列表.

我找到了一些示例代码

DECLARE @List VARCHAR(5000)
SELECT @List = COALESCE(@List + ',' + Display,Display)
FROM TestTable
Order By Display

但是当我尝试时,我总是得到一个关于FROM关键字的错误,而不是它的预期.我可以使用SELECT INTO并且它可以工作,但如果我有多行,我会得到fetch错误.

为什么我不能这样做:

SELECT myVar = Field1
FROM myTable
在Oracle中,您将使用Tim Hall在此页面上收集的许多 string aggregation techniques中的一个.

如果您使用的是11.2,

SELECT LISTAGG(display,',') WITHIN GROUP (ORDER BY display) AS employees
  INTO l_list
  FROM TestTable

在早期版本中,我的偏好是使用用户定义的聚合函数方法(Tim的名为string_agg)来做

SELECT string_agg( display )
  INTO l_list
  FROM TestTable

猜你在找的Oracle相关文章