MAX 函数 SQL

MAX Function SQL

我有一个简单的问题,不应该是这样的问题

这是我的SQL声明

SELECT MAX(right(Epr_plt_epr_num,5)) as max_num
FROM eprmaster
WHERE SUBSTRING(Epr_plt_epr_num, INSTR(Epr_plt_epr_num,'-')+1,2) = '16'

我在这个字段中有这样的数字 Epr_plt_epr_num 55-16-00017 <-- 这是字段中的最大数字

我试图找到该字段的最大值,在本例中应为 17。

如果我这样做 MAX(right(Epr_plt_epr_num,2)) 我得到 17. 但是如果我做任何比它更高的事情 returns 16. 少一个。

我需要它 return 17。但是它是 returning 16。

00017之类的数字不能做Max Right吗?

根据你的例子,我假设 Epr_plt_epr_num 的格式是 xx-yy-zzzzz

并且您想找到最大值 zzzzz 其中 yy=16

SELECT MAX(CAST right(Epr_plt_epr_num,5) AS INT) as max_num
FROM eprmaster
WHERE left(right(Epr_plt_epr_num,6),2) = '16'