我有一个数据类型为varchar(25)
的列,而列中的值可能类似于'89009', 'HS123','4491AU', '44989EA'
。
如何选择最后两个数字不是数字而是字母的值?
在这种情况下,如何仅选择“ 4491AU ”和“ 44989EA ”
请告知。
谢谢大家。问题解决了
答案 0 :(得分:4)
使用like
:
where col like '%[a-zA-Z][a-zA-Z]'
或者,如果您只想要非数字:
where col like '%[^0-9][^0-9]'
答案 1 :(得分:1)
select * from your_table
where some_column like '%[A-Z][A-Z]'
答案 2 :(得分:1)
这个怎么样? http://rextester.com/ZEO59984
SELECT *
,isnumeric(right(value, 2)) AS IsNumericCheck
FROM table1
where isnumeric(right(value,2)) = 0
Isnumeric函数检查输入是否为数字。如果是数字则返回1,否则返回0。 在上面的代码中,使用Value列的右2个字符来执行检查。