作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我试图在 SQL 语句中使用 LIKE 子句来匹配 Oracle 中的特定模式。
我想做这样的事情:
LIKE '[A-Z][A-Z][1-4]%'
..但是我不能使用正则表达式,因为这是在 Oracle9i 上(正则表达式支持在 10g 中出现)。
我试图匹配前面有两个字符的东西,然后是 1 到 4 之间的数字,以及除此之外的任何数字。我试过这个,但它似乎不起作用。我能够让它工作的唯一方法是:
WHERE ...
LIKE '%1__' OR
LIKE '%2__' OR
LIKE '%3__' OR
LIKE '%4__'
我不确定我想这样做的方式是否可行或正确,因为我从未尝试过使用 LIKE 子句的模式。
如果您能提供任何帮助,我们将不胜感激。
最佳答案
笨重,但也许:
select *
from <your_table>
where TRANSLATE(SUBSTR(<blah>,1,3),'ABCDEFGHIJKLMNOPQRSTUVWXYZ1234',
'AAAAAAAAAAAAAAAAAAAAAAAAAA1111') = 'AA1';
可能适合您的需求....
编辑:合并了@Hobo 的 xlnt 建议来翻译子字符串,而不是采用已翻译字符串的子字符串...
关于sql - Like 从句的模式匹配,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1499642/
我想在下面的代码中添加一个distinct。我无法弄清楚确切的语法。提前致谢。 var testdates = (from o in db.FMCSA_ME_TEST_DATA
我是一名优秀的程序员,十分优秀!