gpt4 book ai didi

sql - 当列为varchar时在mysql中查找最大值

转载 作者:行者123 更新时间:2023-11-29 01:34:16 25 4
gpt4 key购买 nike

我有一个 varchar 列,其中包含这样的数据

top<somenumber>

因此“顶部”一词后跟数字。我正在尝试在此表中插入一条记录,并试图找出应该放入的下一个值是什么。

我是否可以找到该列的最大值?

也许是这样的?

select * from catalog ORDER BY CAST(`catalogid` AS DECIMAL(10,2)) DESC limit1;

我如何塑造上述查询以仅考虑数字后跟“top”

最佳答案

一般来说,您可以使用 max :

select
max(catalogid)
from
catalog

但是,这里我们有一个有趣的小问题,我们需要删除 top:

select
max(cast(substring(catalogid, 4) as decimal(10,2))) as maxid
from
catalog

你看,在这里,我们使用 substringcatalogid 字段限制为数字。

此外,您可能想查看 aggregate functions ,因为它们非常方便!

关于sql - 当列为varchar时在mysql中查找最大值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1419126/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com