从值列表

时间:2016-11-10 20:55:28

标签: sql sql-server sql-server-2008 tsql

我有一个数据类型为varchar(25)的列,而列中的值可能类似于'89009', 'HS123','4491AU', '44989EA'

如何选择最后两个数字不是数字而是字母的值?

在这种情况下,如何仅选择“ 4491AU ”和“ 44989EA

请告知。

谢谢大家。问题解决了

3 个答案:

答案 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个字符来执行检查。