最新下载
热门教程
- 1
 - 2
 - 3
 - 4
 - 5
 - 6
 - 7
 - 8
 - 9
 - 10
 
SQL字符型字段按数字型字段排序语句
时间:2022-06-29 08:07:13 编辑:袖梨 来源:一聚教程网
Ludou Simple Vote的投票得分结果是以自定义栏目的方式存储在WordPress的postmeta中,分值存放在meta_value字段,而meta_value字段类型是longtext,如果直接使用下面的SQL查询语句来排序:
| 代码如下 | 复制代码 | 
| 
 ORDER BY `meta_value`  | 
	  |
那么按得分排序得到的结果可能是:
1
10
11
123
1234
2
25
253
3
由于是按字母顺序排列,所以123排在了2的前面,显然不符合我们的要求,那么怎样才能按照我们预想的数字顺序排序呢?下面介绍两种方法。
一、采用MySQL的cast函数,转换字段格式
这里我们将meta_value字段转换成数值类型的字段DECIMAL,然后再进行排序:
| 代码如下 | 复制代码 | 
| 
 ORDER BY CAST(`meta_value` AS DECIMAL)  | 
	  |
需要注意的是,你所要排序的meta_value字段的值必须都是可转换成数字,否则将会出错。
二、使用MySQL绝对值函数ABS
使用MySQL绝对值函数ABS,它告诉MySQL使用绝对值来处理处理这个字段:
ORDER BY ABS(`meta_value`)
如果想中文排序我们可参考
城市按拼音排序:
| 代码如下 | 复制代码 | 
| 
 SELECT chineseName FROM [表名] order by chinesename collate Chinese_PRC_CS_AS_KS_WS asc  | 
	  |
城市按笔划排序:
| 代码如下 | 复制代码 | 
| 
 SELECT chineseName FROM [表名] order by chinesename collate Chinese_PRC_Stroke_CS_AS_KS_WS asc  | 
	  |
相关文章
- 炉石传说标准模式星舰补水德卡组分享 11-04
 - 炉石传说深暗领域版本蛋猎卡组分享 11-04
 - 梦幻西游法宝合成公式是什么-法宝合成公式大全 11-04
 - 过山车之星2安排工作时间表作用介绍 11-04
 - 过山车之星2看游客想法作用介绍说明 11-04
 - 逃离鸭科夫大兴兴BOSS怎么打 大兴兴BOSS打法攻略 11-04