如何在php中使用select statment获取最大值的substr

时间:2016-04-02 13:13:54

标签: php sql

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

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

但它没有显示任何内容。

有人可以指导我的功能吗?

1 个答案:

答案 0 :(得分:0)

如果您需要最长年份和序列号,请将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,但其他数据库具有相同的功能,通常以相同的方式表达。)