删除sql plus中字符串的第一个字符
我是Oracle新手,不知道如何删除字符串中的第一个字符 例如,此值删除sql plus中字符串的第一个字符,sql,oracle,Sql,Oracle,我是Oracle新手,不知道如何删除字符串中的第一个字符 例如,此值 ,1,2,3,4,5,6,7 在这里,我循环它并在每个值后面附加逗号。但不幸的是,它第一次添加了逗号。不确定如何删除它。您可以使用SUBSTR功能 select substr(',1,2,3,4,5', 2) from dual 一种方法是使用ltrim(): 选择ltrim(,',')) 每当我在一个字符串中看到这样的数字时,我就会产生怀疑。这不是表示数字列表的好方法。Ltrim(,“charecter”) Ltr
,1,2,3,4,5,6,7
在这里,我循环它并在每个值后面附加逗号。但不幸的是,它第一次添加了逗号。不确定如何删除它。您可以使用
SUBSTR
功能
select substr(',1,2,3,4,5', 2) from dual
一种方法是使用
ltrim()
:
选择ltrim(,','))
每当我在一个字符串中看到这样的数字时,我就会产生怀疑。这不是表示数字列表的好方法。Ltrim(,“charecter”)
Ltrim(<string>,'charecter')
----to left trim charecters (left side of the string)
,Rtrim(<string>,'charecter')
---to right trim charecters (right side of the string)
----至左侧修剪字符(字符串左侧)
,Rtrim(,'charecter')
---至右侧修剪切割器(管柱右侧)
对于您的查询,您需要
select Ltrim(<string>,',') from table
从表中选择Ltrim(,',')
使用regexp可以更具体一点,该regexp仅在第一个字符是逗号时删除第一个字符
在oracle中:
SELECT REGEXP_REPLACE(
',1,2,3,4,5',
'^,',
''
) FROM DUAL;
Regexp解释:^表示字符串的开头,后跟逗号。如果字符串匹配,则匹配的部分将替换为空字符串。这几乎肯定是个坏问题。您应该更改规范化的方式,而不必解析列中的数字列表
SELECT REGEXP_REPLACE(
',1,2,3,4,5',
'^,',
''
) FROM DUAL;