当前位置:Gxlcms > mysql > MySQL按常规排序、自定义排序和按中文拼音字母排序的方法

MySQL按常规排序、自定义排序和按中文拼音字母排序的方法

时间:2021-07-01 10:21:17 帮助过:36人阅读

MySQL常规排序、自定义排序和按中文拼音字母排序,在实际的SQL编写时,我们有时候需要对条件集合进行排序。

下面给出3种比较常用的排序方式,mark一下

1.常规排序ASC DESC

ASC 正序

DESC倒叙

-- 此处不用多讲

2.自定义排序

自定义排序是根据自己想要的特定字符串(数字)顺序进行排序。

主要是使用函数 FIELD(str,str1,str2,str3,...)

MySQL的自定义排序,str与str1、str2、str3...进行比较,并按照str1,str2,str3...的顺序输出,如果遇到str为null或者不存在str1,str2,str3...中的情况的则序列为0,

eg:

SELECT * FROM TEST ORDER BY FIELD(value,'test1','test2','test3','test4') ASC/DESC

eg2:

SELECT * FROM TEST WHERE VALUE IN('test1','test2','test3','test4') ORDER BY FIELD(value,'test1','test2','test3','test4') ASC/DESC -- 保证只满足条件的进行排序

3.按中文拼音字母排序

如果表字段使用的GBK编码的话,我们可以直接order by value ,因为GBK本身就是按照拼音字母排序ABCDEFGHIGK...,当第一位相同的时候会比较第二位,以此类推。 如果表字段使用的UTF-8编码的话,通常我们都会的编码,这样我们可以使用MySQL的convert方法开转换gbk进行排序。

eg:

SELECT * FROM TEST ORDER BY CONVERT(value USING GBK) ASC/DESC

以上所述是小编给大家介绍的MySQL按常规排序、自定义排序和按中文拼音字母排序,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对脚本之家网站的支持!

您可能感兴趣的文章:

  • Mysql row number()排序函数的用法和注意
  • 将MySQL查询结果按值排序的简要教程
  • 两种mysql对自增id重新从1排序的方法
  • MySQL中按照多字段排序及问题解决
  • mysql的中文数据按拼音排序的2个方法
  • Mysql中的排序规则utf8_unicode_ci、utf8_general_ci的区别总结
  • 数据库查询排序使用随机排序结果示例(Oracle/MySQL/MS SQL Server)
  • mysql 关键词相关度排序方法详细示例分析
  • MYSQL 关于两个经纬度之间的距离由近及远排序
  • 让MySQL支持中文排序的实现方法

人气教程排行