为了账号安全,请及时绑定邮箱和手机立即绑定

关于Oracle查询求助?

关于Oracle查询求助?

慕尼黑的夜晚无繁华 2018-08-11 14:10:03
数据表中第一列名称为编号,数据格式为10位数字,每一位取值0-9。要查询编号满足条件: AABAA(A,B取值0-9,且B≠4) 的所有行。自己方法比较笨,穷举每一个条件,如 like%11211%,然后union。这样感觉太复杂了,有没有更好的方法?
查看完整描述

1 回答

?
白衣染霜花

TA贡献1796条经验 获得超10个赞

SELECT * FROM test WHERE LEFT(id,5) in
(SELECT id FROM
(SELECT REVERSE(LEFT(id,5)) AS id FROM dbo.Test
WHERE SUBSTRING(id,3,1)<>4) test)
假设id为编号,test为表名。因为是AABAA形,所以截取id的前5位并去掉第三位是4的,然后反转。然后原表的ID截取前5位和反转后的应该相同

查看完整回答
反对 回复 2018-08-12
  • 1 回答
  • 0 关注
  • 669 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信