当前位置: 代码迷 >> Oracle管理 >> 关于通配符的查询解决办法
  详细解决方案

关于通配符的查询解决办法

热度:117   发布时间:2016-04-24 04:14:10.0
关于通配符的查询
本帖最后由 zhui22222 于 2014-09-07 17:35:03 编辑
表格:
编码     内容  
21**     张三   
2302   李四

想在表内容里使用通配符,如用21**(“*”还是“?”或者其他?)的代表2100~2199,如果查询2302,得到李四,查询21开头的任意4位数字也就是2100~2199之间的数字,得到张三,查询语句怎么写,或者表怎么设计?


------解决思路----------------------
oracle通配单个字符我记得是用的下划线,查询时使用like条件查询,数据结构按你目前结构应该就可以
------解决思路----------------------
like '21__'
------解决思路----------------------
select  case when  substr(编码,1,2)='21' then '张三'  
                       when  编码='2302' then '李四'
                       end
from dual;
------解决思路----------------------
select  case when  substr(&id,1,2)='21' then '张三'  
                        else  '李四'
                        end
 from dual; 
  相关解决方案