从sql plus中的字符串中删除第一个字符

问题描述 投票:0回答:4

我是Oracle的新手,不知道如何删除String中的第一个字符。

例如这个值

,1,2,3,4,5,6,7

在这里,我循环它并在每个值后附加逗号。但不幸的是,它第一次附加逗号。不知道如何删除它。

sql oracle
4个回答
3
投票

一种方法是使用ltrim()

select ltrim(<string>, ',')

每当我在字符串中看到类似的数字时,我都会怀疑。这不是表示数字列表的好方法。


3
投票

你可以使用SUBSTR功能

select substr(',1,2,3,4,5', 2) from dual

1
投票

使用正则表达式可以更具体一点,只有当它是逗号时才删除第一个字符。

在oracle中:

SELECT REGEXP_REPLACE( 
    ',1,2,3,4,5',
    '^,',
    ''
) FROM DUAL;

正则表达式解释:^表示字符串的开头,后跟逗号。如果字符串匹配,匹配的部分将替换为空字符串。


0
投票
  Ltrim(<string>,'charecter')  
   ----to left trim charecters (left side of the string)
  ,Rtrim(<string>,'charecter')
       ---to right trim charecters (right side of the string)

您需要的查询

       select Ltrim(<string>,',') from table
© www.soinside.com 2019 - 2024. All rights reserved.