我正在尝试从数据库中搜索的最大值获取子字符串但是失败了。我的字符串是AB/LAJ/GER/R4/0210/001
格式,其中02是月,10是年,最后000是增加数字,因为添加了记录。我想从数据库中选择最大年份和最后000最大数字并使用此命令
"SELECT substr(max(serial), 16) FROM Subscriber WHERE Type= ....."
但它没有显示任何内容。
有人可以指导我的功能吗?
答案 0 :(得分:0)
如果您需要最长年份和序列号,请将right()
与max()
一起使用:
SELECT max(right(serial, 6)),
FROM Subscriber
WHERE Type = . . .
如果您想要整个serial
或16个字符,请使用order by
和limit
:
SELECT serial
FROM Subscriber
WHERE Type = . . .
ORDER BY right(serial, 6) DESC
LIMIT 1;
(这两个答案都假设数据库是MySQL,但其他数据库具有相同的功能,通常以相同的方式表达。)