T-SQL: 获取包含数字和字母的字符字段中的最大数值

T-SQL: Get max numeric value in char field having both numbers and letters

在 SQL Server 2008 数据库中 table 我有一个包含数字和字母的字符字段。即:

TST
842
UUT
124
674
XTM
763

我需要找到该字段中的最大值 整数。所以在上面的例子中我会 return "842".

我知道如何测试该值是否为数字(ISNUMERIC()函数),但我不知道如何使用该测试来 return 最大整数值.

SELECT MAX(yourcol) FROM T WHERE ISNUMERIC(yourcol)=1 ;

请试试这个:

SELECT MAX(field) 
FROM   table 
WHERE ISNUMERIC(field) = 1

一种方法是使用外部查询从整数集中获取最大值:

select MAX(your_char) from (select your_char from table where ISNUMERIC(your_char) = 1) sub

或者实际上这也应该有效:

select MAX(your_char) from t where ISNUMERIC(your_char) = 1