如何使用php中的select语句获取最大值的子字符串


How to get substr of max value using select statment in php

我试图从数据库中搜索的最大值中获取子字符串,但失败了。我的字符串是AB/LAJ/GER/R4/0210/001格式,其中02是月,10是年,最后000是添加记录时的增量数字。我想从数据库中选择最大年份和最后000个最大数字,并使用此命令

"SELECT substr(max(serial), 16) FROM Subscriber WHERE Type= ....."

但它什么也没显示。

有人能给我介绍一下功能吗?

如果您想要最大年份和序列号,则使用right()max():

SELECT max(right(serial, 6)),
FROM Subscriber
WHERE Type = . . . 

如果您想要完整的serial或16个字符,则使用order bylimit:

SELECT serial
FROM Subscriber
WHERE Type = . . . 
ORDER BY right(serial, 6) DESC
LIMIT 1;

(这两个答案都假设数据库是MySQL,但其他数据库具有相同的功能,通常以相同的方式表示。)