我想在sql server中找到最大数字我有字符串部分和整数部分的值

时间:2016-09-07 11:27:45

标签: sql sql-server substring max resultset

我的值为SP-1SP-2SP-3 ..... SP-10SP-11

我必须从我的SQL服务器

中获取最大数量
SELECT MAX(SUBSTRING(SupplementId,4,10)) AS max_num FROM supreg

当我执行代码时,我得到最大数字为9。

3 个答案:

答案 0 :(得分:1)

尝试:

SELECT MAX(CAST(SUBSTRING(SupplementId,4,10) AS INT)) AS max_num FROM supreg

SELECT MAX(CAST(REPLACE(SupplementId,'SP-','') AS INT)) AS max_num FROM supreg

答案 1 :(得分:0)

另一种方法是使用长度:

SELECT TOP 1 sr.*
FROM supreg sr
ORDER BY length(SupplementId) DESC, SupplementId DESC;

这允许您获得具有最大值的整个行。

答案 2 :(得分:0)

根据您的要求,您可以使用

 Select Max(substr ( tb_simple.sampleValues ,4  )  ) as maxValue from tb_simple

enter image description here