新人求助:如何筛选出字段末尾是1534至3154的数据,格式是字符型

Alicemei550 2015-08-29 04:34:34
就是比如有一个表A的其中一个字段a是字符型的,内容是字母+数字的(如:ASFYG004151),现在要筛选出这个表的数据,条件是字段a的后4位数是1534到3154的,不管前面的字母和数字是什么,而且这个字段的位数不是固定的。
...全文
129 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
xu176032 2015-08-31
  • 打赏
  • 举报
回复
a like '%1534' or a like '%3154' 这样应该也可以吧
mayanzs 2015-08-30
  • 打赏
  • 举报
回复
select substr(a,regexp_instr(a,'[^0-9][0-9]*$')+1) from YourTable; 例如: select substr('ASFYG004151',regexp_instr('ASFYG004151','[^0-9][0-9]*$')+1) from dual;
kingwinerxp 2015-08-29
  • 打赏
  • 举报
回复
如果是查询相关数据的话,用substr,如果是作为where条件话,最好建一个函数索引
卖水果的net 2015-08-29
  • 打赏
  • 举报
回复
刚才是 sql server 的语法。 oracle 下用
select substr('1234567890',-4) from dual
卖水果的net 2015-08-29
  • 打赏
  • 举报
回复
使用 rihgt 这个函数,取出后 4 位。

3,488

社区成员

发帖
与我相关
我的任务
社区描述
Oracle 高级技术相关讨论专区
社区管理员
  • 高级技术社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧