sql - 有没有办法在 sql 的 xmlagg 函数中使用 DISTINCT?
问题描述
我使用了以下命令。
select col1, col2, XMLAGG(XMLELEMENT(E, colname || ',')).EXTRACT('//text()')
from table
group by col1, col2
输出:
col1 col2 col3
KOCHI ERNAKULAM residential, commercial, residential, residential
但我需要以下输出作为
col3 :
residential, commercial.
我尝试在子查询中使用 DISTINCT 但没有获得所需的输出。有什么帮助吗?
解决方案
如何使用该regexp_replace
功能?例如
select
col1,
col2,
regexp_replace(XMLAGG(XMLELEMENT(E, colname || ',')).EXTRACT('//text()'),'([^,]+)(,\1)+', '\1') as colname_list
from table
group by col1, col2
推荐阅读
- google-apps-script - 脚本大量使用方法 Range.getValue
- java - Java,无限 if 语句
- java - 我正在尝试创建一个动态表,但是当我午餐应用程序时它就崩溃了
- powershell - 以本地管理员身份从另一个 powershell 脚本调用 powershell 脚本
- hp-exstream - hp exstream 表(部分)有行但收到错误说没有行
- javascript - 在Javascript中将唯一对象添加到对象数组
- jquery - Jquery json循环仅显示第二个字段
- pyspark - Jupyter ImportError:尽管安装了 py4j,但没有名为 py4j.protocol 的模块
- php - 如何让 Laravel 5.7 种子刀片本地化语法在刀片中渲染?
- java - Java:将 String 转换为 DateFormat 有效,但不是转换后 String 的 Date 对象