sql - Oracle:选择 CSV 格式的项目?

标签 sql oracle csv

假设我有一个问题

select name from tbl where dept = 123

返回这样的数据集

bob
carol
steve

有没有一种方法可以本地表达(在 sql 中,或者可能是一个过程?)一个查询,它将数据作为 CSV 或空格分隔列表返回?

bob,carol,steve

最佳答案

什么版本的甲骨文?

Tim Hall 有一个页面描述了各种 string aggregation techniques in Oracle .如果您使用的是 Oracle 11.2,最简单的选择是

SELECT listagg(name, ',') within group( order by name)
  FROM table_name
 WHERE dept = 123

如果您使用的是早期版本的 Oracle,还有许多其他方法各有优缺点。 Tim 对各种方法的比较非常完整。

关于sql - Oracle:选择 CSV 格式的项目?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8797669/

相关文章:

php - 错误 unicode 导出 csv 文件 - Laravel/Excel

sql - 如何在Oracle中的字符串列中使用带有数字的条件

sql - PostgreSQL 和多个匹配行

java - SQLException : Protocol violation. Oracle JDBC 驱动程序问题

java - 我应该如何将键值传递给 PL/SQL 过程?

java - 从 Java 中的字符串数组列表生成 XML

java - 使用 Java 解析 Csv 文件时出错

php - MYSQL优化设计规则: PHP method vs MYSQL procedure on local host

mysql - Mysql中如何将一张表的字段复制到另一张表?

sql - 如何增加每个非连续值的计数?