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

 更新时间:2017年04月19日 11:10:40   投稿:mrr  
MySQL常规排序、自定义排序和按中文拼音字母排序,在实际的SQL编写时,我们有时候需要对条件集合进行排序。下面给出3种比较常用的排序方式,一起看看吧

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索引篇explain命令详解

    mysql索引篇explain命令详解

    这篇文章主要介绍了mysql索引篇explain命令详解,mysql中的explain命令可以用来查看sql语句是否使用了索引,用了什么索引,有没有做全表扫描,更多相关内容需要的小伙伴可以参考一下
    2022-08-08
  • mysql5.5与mysq 5.6中禁用innodb引擎的方法

    mysql5.5与mysq 5.6中禁用innodb引擎的方法

    这篇文章主要介绍了mysql5.5中禁用innodb引擎的方法,需要的朋友可以参考下
    2014-04-04
  • mysql数据库的内外连接

    mysql数据库的内外连接

    这篇文章主要介绍了mysql数据库的内外连接,内连接实际上就是利用where子句对两种表形成的笛卡儿积进行筛选,我们前面学习的查询都是内连接,也是在开发过程中使用的最多的连接查询,需要的朋友可以参考下
    2023-07-07
  • Ubuntu10下如何搭建MySQL Proxy读写分离探讨

    Ubuntu10下如何搭建MySQL Proxy读写分离探讨

    MySQL Proxy是一个处于你的Client端和MySQL server端之间的简单程序,它可以监测、分析或改变它们的通信
    2012-11-11
  • mysql触发器一个表改变另一个表也改变问题

    mysql触发器一个表改变另一个表也改变问题

    这篇文章主要介绍了mysql触发器一个表改变另一个表也改变问题,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
    2023-08-08
  • MySQL中导出用户权限设置的脚本分享

    MySQL中导出用户权限设置的脚本分享

    这篇文章主要介绍了MySQL中导出用户权限设置的脚本分享,本文通过导出mysql.user表中数据实现导出权限设置,需要的朋友可以参考下
    2014-10-10
  • 简单谈谈MySQL优化利器-慢查询

    简单谈谈MySQL优化利器-慢查询

    分析MySQL语句查询性能的方法除了使用 EXPLAIN 输出执行计划,还可以让MySQL记录下查询超过指定时间的语句,我们将超过指定时间的SQL语句查询称为“慢查询”
    2017-01-01
  • Centos下 修改mysql密码的方法

    Centos下 修改mysql密码的方法

    这篇文章主要介绍了Centos下 修改mysql密码的方法,需要的朋友可以参考下
    2017-02-02
  • mysql的启动过程详解

    mysql的启动过程详解

    这篇文章主要介绍了mysql的启动过程详解,本文用生动风趣的文风讲解了mysql的启动过程,绝对让你难忘哦,需要的朋友可以参考下
    2014-08-08
  • mysql中Table is read only的解决方法小结

    mysql中Table is read only的解决方法小结

    本文章总结了关于在linux与windows中 mysql出现Table is read only解决办法总结,有需要的朋友可参考一下
    2013-01-01

最新评论