从SQL Plus中的字符串中删除第一个字符

时间:2018-12-24 17:54:45

标签: sql oracle

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

例如,此值

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

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

4 个答案:

答案 0 :(得分:3)

您可以使用SUBSTR函数

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

答案 1 :(得分:3)

一种方法是使用ltrim()

select ltrim(<string>, ',')

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

答案 2 :(得分:1)

使用正则表达式可以更具体一些,该规则仅在第一个字符为逗号时才删除它。

在oracle中:

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

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

答案 3 :(得分: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