选择部分数据

时间:2013-09-17 14:08:51

标签: sql oracle

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

   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    

但我想在NAME列中选择数据但没有'135。' 请注意,135不是常量。它可以是例如'34567。'。所以它可以是更多的数字 可能吗?我喜欢这个:

 NAME        
 name1      
 name2    
 name3  

1 个答案:

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