阿里云
发表主题 回复主题
  • 334阅读
  • 4回复

关于限定Like 匹配符取值范围的问题

级别: 新人
发帖
10
云币
13
select * from table where col1 like 'a_b';


如果想要限制匹配符的取值范围,如'_'必须在'c',d','e'三个值之间取值。


(除了写成 and substr(col1,2,1) in ('c',d','e'))


select, from, table, where, substr






级别: *
发帖
*
云币
*






真遗憾,我记得sybase好象可以的。
级别: *
发帖
*
云币
*





like本身不能做到你的要求, 通配符是不能限定范围的
级别: *
发帖
*
云币
*


可能我的理解有错误~~~~

你觉得用集合操作怎么样?

[php]

select * from table where col1 like 'a_b'

minus

select * from table where col1 ='aab'

minus

select * from table where col1='aeb'
级别: *
发帖
*
云币
*


select * from table where col1 in ('acb','adb','aeb');

如果col1上有索引,这样子可能比你提到的两种执行都要好。
发表主题 回复主题
« 返回列表
«12345678910»
共10页
上一主题下一主题

限100 字节
如果您在写长篇帖子又不马上发表,建议存为草稿
 
验证问题: 阿里云官网域名是什么? 正确答案:www.aliyun.com
上一个 下一个
      ×
      全新阿里云开发者社区, 去探索开发者的新世界吧!
      一站式的体验,更多的精彩!
      通过下面领域大门,一起探索新的技术世界吧~ (点击图标进入)

      版权声明

      开发者论坛为你提供“关于限定Like 匹配符取值范围的问题”的内容,论坛中还有更多关于 “关于限定Like 匹配符取值范围的问题” 的内容供你使用,该内容是网友上传,与开发者论坛无关,如果需要删除请联系zixun-group@service.aliyun.com,工作人员会在5个工作日内回复您。