3

可能这很容易,但我需要你的帮助。
我有一个包含如下数据的表:

   NAME       VAL1  
135.name1    value1  
135.name2    value2  
135.name3    value3  

如果我想选择 NAME 列中的数据,我会这样做:

select s.NAME
  FROM MY_TABLE s
where s.SCHEDULE_NAME like '135.%'

    NAME        
  135.name1      
  135.name2    
  135.name3    

但我想选择名称列中的数据,但没有“135”。
请注意,135 不是一个常数。例如,它可以是“34567.”。所以它可以是更多的数字。
可能吗?我喜欢得到这个:

 NAME        
 name1      
 name2    
 name3  
4

1 回答 1

2

您可能正在寻找这个:-

SELECT REGEXP_REPLACE('135.name1', '^135.') FROM Table;

对于您的情况:-

SELECT REGEXP_REPLACE(name, '^135.') FROM My_Table;

或试试这个: -

SELECT REPLACE('135.name1','135.','') COL1 FROM Table;

编辑:-

为了使它更动态,你可以试试这个: -

SELECT REGEXP_REPLACE(name, '^\d+\.') FROM My_Table;
于 2013-09-17T14:13:25.927 回答