你的意思是不是查询code为521.XXX的所有记录?如果是就应该这样写:
select * from amt2002 where code like '521.%'

解决方案 »

  1.   

    在oracle的sql中,'_'通配一个字符,'%'通配任意个字符.如果想查找含有通配符的字段(即_和%),那么请用escape关键字告知oracle哪个字符是转义符.
    例如:要查找abcd_def这样的值
    select * from table where field like '%cd__d%' escape '_'
      

  2.   

    接上,也可以通过instr函数变通.
    例如: 某字段含有 a,b,a_c,b_d这几个值,想查找出含有'_'的值,那么,这样写是可以的.
    select * from table where instr(field,'_')!=0
    当然,这样写对于大数据量的查询会带来性能上的问题,这里只是提供解决问题的一个方法.
      

  3.   

    想查找“521._”的字符:select * from youtable where field like '521./_' ESCAPE  '/';查找以“521.”开头的长度为5位的字符:select * from youtable where field like '521._';