2

我有这样的mysql数据库

id | code
1  | bok-1
2  | bok-2
3  | bok-3
4  | inv-1
5  | inv-2
6  | inv-3

我如何获得最新的前缀数bok-
上面示例中的代码结果将是bok-3

4

2 回答 2

2

这有效:

select code
from Table1
where code like "bok%"
order by cast(substring(code from 5) as signed) desc
limit 1

编辑 :

如果列表中有 bok-11,它现在给出 bok-11,因为我认为 11 大于 3。

于 2012-06-29T20:02:07.870 回答
0

对于代码尝试:

select code from table where id in (select max(id) where code like 'bok-%');

并且仅用于 id:

select max(id) where code like 'bok-%'
于 2012-06-29T20:04:20.460 回答