mysql - MySQL列顺序按字母数字忽略最高值
问题描述
在 MySQL 中,我有一个名为 custom_meta 的表,我在其中获取如下值
id meta_value
1 USNEWYORK01
2 USNEWYORK02
3 USNEWYORK03
4 USNEWYORK04
5 USNEWYORK05
6 USNEWYORK06
7 USNEWYORK07
8 USNEWYORK10
9 USNEWYORK14
10 USNEWYORK16
11 USNEWYORK20
12 USNEWYORK21
13 USNEWYORK32
14 USNEWYORK45
15 USNEWYORK56
16 USNEWYORK78
17 USNEWYORK68
18 USNEWYORK69
19 USNEWYORK80
20 USNEWYORK90
21 USNEWYORK99
22 USNEWYORK100
23 USNEWYORK45
24 USNEWYORK101
现在我想获得最高数字的元值。所以在表中你可以看到最高的是USNEWYORK101
。所以为了得到这个,我做了这样的查询
SELECT meta_value from custom_meta ORDER BY meta_value DESC LIMIT 1
但它USNEWYORK99
总是越来越。我也尝试过使用CAST
,但这也不起作用。
那么有人可以帮我完成这项工作吗?任何建议和建议都将是非常可观的。
谢谢。
解决方案
SELECT id,
meta_value,
Cast(Substring(meta_value, 10, Length(meta_value)) AS UNSIGNED)
FROM custom_meta
ORDER BY 3 DESC
LIMIT 1;
推荐阅读
- pandas - pandas.reorder_levels 只有一个索引
- java - 创建一个通用 JSONPatch 对象
- python - 从源代码构建 Python 时出现 SSL 错误
- python-3.x - Python Selenium 数据不加载(网站安全)
- python - 随机我得到错误:“selenium.common.exceptions.ElementNotInteractableException:消息:元素不可交互:元素大小为零”
- php - Laravel echo 连接到 pusher 而不是 laravel-websockets
- python - 错误:找不到满足要求 tensorflow==1.2.1 的版本?pip 找不到 tensroflow 1 版本
- ajax - 尽管与邮递员合作,但我对 API 的请求不适用于 ajax (err:500)
- javascript - 如何在 Safari 而不是默认浏览器 (JavaScript) 中打开 url?
- node.js - Node JS 将视频上传到我的 youtube 帐户