
# U0100078：GaussDB 中 LISTAGG 函数不支持 DISTINCT 关键字
#### 描述
**数据库类型与版本**
- 源库类型与版本：UGO 支持的 Oracle 版本。
- 目标库类型与版本：GaussDB V2.0-9.0 之前的版本。
**语法示例**
GaussDB V2.0-9.0 之前版本 LISTAGG 函数的聚集列表达式不支持 DISTINCT 关键字，如下示例在 GaussDB 中不支持，UGO 将生成此错误提示。
```
SELECT LISTAGG(DISTINCT col,';') WITHIN GROUP(ORDER BY col) FROM listagg_t1;
```
#### 改造建议
建议升级 GaussDB 版本或改造业务。改造业务可参考如下示例，通过子查询和ROW_NUMBER函数来实现类似的功能：
```
SELECT LISTAGG(col, ';') WITHIN GROUP(ORDER BY col)
FROM (
  SELECT col, ROW_NUMBER() OVER (PARTITION BY col ORDER BY col) AS rn  FROM listagg_t1
) t WHERE rn = 1;
```
