mysql - Mysql varchar 排序
问题描述
我有一个varchar类型的归档参数值。即使它是 varchar 类型,它也存储整数、十进制和字母数字、特殊字符值。我想按数字排序。例如
0.001
0.002
3
3.1
4
4.3
4.9 and so on.
解决方案
尝试这个 :
SELECT * FROM table_name ORDER BY parameter_value + 0;
例如:
CREATE TABLE product (
Id int,
name Varchar,
price Varchar
);
INSERT INTO product
VALUES (11, 'abc', '100.5');
INSERT INTO product
VALUES (12, 'adc', '97.2');
INSERT INTO product
VALUES (13, 'arc', '104.5');
select * from product order by price +0;
输出:
12|adc|97.2
11|abc|100.5
13|arc|104.5
这将有助于对 varchar 类型列的数值进行排序。
推荐阅读
- javascript - 有没有办法在下一个/上一个按钮上使用以下 Siema 排列?
- java - 无法使用自定义字体读取阿拉伯 PDF 文件
- go - 获取外部/父结构名称
- aframe - 位置和旋转属性未在 aframe 0.8.0 中使用 SetAttribute 更新
- css - 如何将我的布局链接到资源/视图/上的资产?
- user-interface - 如何在没有 FXML 的情况下更改按钮的背景颜色?#JAVAFX
- excel - Excel 图形子分类
- unreal-engine4 - 如何从 GameplayAbility 触发器中检索 GameplayEvent 有效负载?
- vba - 如何使用vba宏从ms word文档中隐藏背景颜色为灰色的表格单元格
- javascript - 使用 Sweetalert 单击“确定”后重新加载页面