首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >LISTAGG内部的RTRIM?

LISTAGG内部的RTRIM?
EN

Stack Overflow用户
提问于 2019-07-19 17:01:58
回答 3查看 529关注 0票数 2

日安。我正在编写一个使用LISTAGG并返回结果的查询。这是我到目前为止掌握的密码。

代码语言:javascript
复制
   select 
    listagg(rtrim(shop_cde, 1), ', ') within group (order by shop_cde) col1,
    business_cde
    from mytable
    group by business_cde

我希望这会返回结果,聚合结果,并从shop_cde的右侧剪掉一个字符。然而,它似乎没有发生修整。Shop_cde仍然充分显示。有人知道如何在LISTAGG函数内修剪吗?

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2019-07-19 17:05:34

trim()函数通常用于删除前导和尾随空格(尽管您也可以删除其他字符)。

如果要丢弃最后一个字符,请使用substr()

代码语言:javascript
复制
select listagg(substr(shop_cde, 1, length(shop_cde) - 1), ', ') within group (order by shop_cde) col1,
       business_cde
from mytable
group by business_cde
票数 3
EN

Stack Overflow用户

发布于 2019-07-19 17:09:37

如果要从右边移除给定数量的字符,请使用substr;如果希望删除未指定数目的给定字符,请使用rtrim。左边移除将使用substr(..., 2)ltrim,resp。

代码语言:javascript
复制
   select 
    listagg(substr(shop_cde, -1), ', ') within group (order by shop_cde) col1,
    business_cde
    from mytable
    group by business_cde
票数 2
EN

Stack Overflow用户

发布于 2019-07-19 17:05:06

你应该使用rtrim(listagg(.))

代码语言:javascript
复制
select 
rtrim(listagg(shop_cde, ', ') within group (order by shop_cde) ) col1,
business_cde
from mytable
group by business_cde
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/57116806

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档