删除部分字符串

问题描述

sql....在我的表上,我的报告中有带有“Pat0700-1700”的属性表,我想删除 Pat 并只显示 0700-1700。我将如何在 sql 上完成此操作。我已经搜索并尝试了带有否定结果的子字符串。

解决方法

在以下 RDBMS 上:

  • 甲骨文
  • MySQL
  • DB2
  • 标准SQL

您可以尝试使用 SUBSTR() 函数:

SELECT SUBSTR(<column>,4) AS substr_string 
FROM <table>

输出

substr_string
-------------
0700-1700
,

标准的 SQL 方法是 replace():

select replace(col,'Pat','')

鉴于字符串的其余部分具有固定格式 -- 9 个字符 -- 您可能还会发现其中一个是合适的(并且更通用):

select right(col,9)
select substr(col,4,9)     -- or perhaps substring()