返回顶部
首页 > 资讯 > 数据库 >MySQL中怎么按照指定的字段排序
  • 984
分享到

MySQL中怎么按照指定的字段排序

2024-04-02 19:04:59 984人浏览 薄情痞子
摘要

本篇文章为大家展示了Mysql中怎么按照指定的字段排序,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。测试数据drop table a;create tab

本篇文章为大家展示了Mysql中怎么按照指定的字段排序,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。

测试数据

drop table a;

create table a (x varchar(10),y varchar(10));

insert into a values('yujx','all'),('oracle','pc'),('mysql','mobile');

#表a的测试数据如下
Mysql>select * from a;
+--------+--------+
| x      | y      |
+--------+--------+
| yujx   | all    |
| oracle | pc     |
| mysql  | mobile |
+--------+--------+
3 rows in set (0.00 sec)

#默认的按y排序(升序或降序)结果
MySQL>select * from a order by y;
+--------+--------+
| x      | y      |
+--------+--------+
| yujx   | all    |
| mysql  | mobile |
| oracle | pc     |
+--------+--------+
3 rows in set (0.00 sec)


MySQL>select * from a order by y desc;
+--------+--------+
| x      | y      |
+--------+--------+
| oracle | pc     |
| mysql  | mobile |
| yujx   | all    |
+--------+--------+
3 rows in set (0.00 sec)

 

现在想按mobile->all->pc的顺序排序,可使用如下方法

方法一:使用 FIND_IN_SET(str,strlist) 函数
MySQL>select * from a order by find_in_set(y,'mobile,all,pc');
+--------+--------+
| x      | y      |
+--------+--------+
| mysql  | mobile |
| yujx   | all    |
| oracle | pc     |
+--------+--------+
3 rows in set (0.00 sec) 

方法二:使用FIELD(str,str1,str2,str3,...)函数
#FIELD函数主要用途会返回值在后面列表中的位置,如下
MySQL>select x,y,field(y,'mobile','pc','all') sort_Nu from a order by field(y,'mobile','pc','all');   
+--------+--------+---------+
| x      | y      | sort_Nu |
+--------+--------+---------+
| mysql  | mobile |       1 |
| oracle | pc     |       2 |
| yujx   | all    |       3 |
+--------+--------+---------+
3 rows in set (0.00 sec)

方法三:使用 SUBSTRING_INDEX(str,delim,count) 函数
MySQL>select * from a order by substring_index('mobile,all,pc',y,1);
+--------+--------+
| x      | y      |
+--------+--------+
| mysql  | mobile |
| yujx   | all    |
| oracle | pc     |
+--------+--------+
3 rows in set (0.00 sec)
#看下面 substring_index('mobile,all,pc',y,1) 取值,可知按b列的值排序 y的顺序固然就是 mobile,all,pc了
MySQL>select y,substring_index('mobile,all,pc',y,1) b  from a;
+--------+-------------+
| y      | b           |
+--------+-------------+
| all    | mobile,     |
| pc     | mobile,all, |
| mobile |             |
+--------+-------------+
3 rows in set (0.00 sec)

方法四:使用case when

MySQL>select x,y,case when y='mobile' then 1 when y='all' then 2 when y='pc' then 3 end sort_nu from a order by  case when y='mobile' then 1 when y='all' then 2 when y='pc' then 3 end;

+--------+--------+---------+
| x      | y      | sort_nu |
+--------+--------+---------+
| mysql  | mobile |       1 |
| yujx   | all    |       2 |
| oracle | pc     |       3 |
+--------+--------+---------+
3 rows in set (0.00 sec)

上述内容就是MySQL中怎么按照指定的字段排序,你们学到知识或技能了吗?如果还想学到更多技能或者丰富自己的知识储备,欢迎关注编程网数据库频道。

您可能感兴趣的文档:

--结束END--

本文标题: MySQL中怎么按照指定的字段排序

本文链接: https://lsjlt.com/news/58747.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

猜你喜欢
  • MySQL中怎么按照指定的字段排序
    本篇文章为大家展示了MySQL中怎么按照指定的字段排序,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。测试数据drop table a;create tab...
    99+
    2024-04-02
  • Mysql 按照指定字符串顺序排序
    问题 : 排序中。 假如每一条记录都有一个字段。“交通工具” 。 假如我现在想要查询结果按照我指定的字符串来排序(不是字符顺序排序), 例如,按照 飞机-轮船-汽车 的顺序进行排序。 在不用分组的情况下。 有没有类似这样的写法?...
    99+
    2021-05-28
    Mysql 按照指定字符串顺序排序 数据库入门 数据库基础教程 数据库 mysql
  • mysql中怎么按照特定顺序排序
    mysql中怎么按照特定顺序排序,相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。 Mysql查询IN,并按照特定顺序...
    99+
    2024-04-02
  • SQL查询按指定字段排序
    city_name是字段名,现在要按("北京","上海","广州")   先后顺序把数据查询统计出来?不知道你什么数据库, 假如是 Oracle: sel...
    99+
    2024-04-02
  • mysql怎么按字段值排序
    要按字段值对结果进行排序,可以使用ORDER BY子句。例如,要按字段名为name的值对结果进行升序排序,可以这样写: SELEC&...
    99+
    2024-03-14
    mysql
  • mysql按照两个或多个字段排序【转】
    如何让mysql按照两个或多个字段排序  错误方式: order   by   last_time   and   id   desc  这种方式两个字段都是降序的(and隔开哪个,第二个参数不起作用。)   正确方式: ord...
    99+
    2021-11-05
    mysql按照两个或多个字段排序【转】
  • SQL 中怎么按特定字段值排序
    SQL 中怎么按特定字段值排序,相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。 id, name shandong...
    99+
    2024-04-02
  • mysql怎么按两个字段排序
    在MySQL中,可以使用ORDER BY子句按照两个字段进行排序。例如,如果要按照字段column1和column2进行升序排序,可...
    99+
    2024-04-09
    mysql
  • mysql按照自定义(指定顺序)排序的方法实例
    目录一、mysql中实现指定排序需求二、解决方案1:自定义排序实现01. case when 转换实现自定义排序;02:mysql排序函数filed 实现自定义排序(推荐);03:函...
    99+
    2024-04-02
  • mysql 字符串先按照长度排序再按照ASCII码排序
    方法一:先按照长度排序再按照ASCII码排序 select display_name from desktop order by display_name desc, length(display_name) desc;   方法...
    99+
    2018-06-12
    mysql 字符串先按照长度排序再按照ASCII码排序 数据库入门 数据库基础教程 数据库 mysql
  • laravel中 指定字段 指定数值排序
    $query = Tasks::leftjoin('get_tasks', 'get_tasks.t_id', '=', 'tasks.id') ->where('tasks.release_tasks_status', '...
    99+
    2023-10-05
    laravel 服务器 数据库 php sql
  • excel排序怎么按照自定义序列排序
    这篇文章主要介绍“excel排序怎么按照自定义序列排序”,在日常操作中,相信很多人在excel排序怎么按照自定义序列排序问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”excel排序怎么按照自定义序列排序”的疑...
    99+
    2023-07-02
  • mysql怎么按照性别排序
    mysql中实现根据性别进行排序的方法首先,在命令行中启动MySQL服务;service mysql start  MySQL服务启动后,在命令行中输入mysql的用户名和密码登录到MySQL;mysql -u root -p登录到MySQ...
    99+
    2024-04-02
  • mysql中如何按照汉字拼音排序
    mysql中实现按照汉字的拼音进行排序的方法首先,在命令行中启动MySQL服务;service mysql start  MySQL服务启动后,在命令行中输入mysql的用户名和密码登录到MySQL;mysql -u root -p登录到M...
    99+
    2024-04-02
  • golang中如何按照结构体的某个字段排序
    本文小编为大家详细介绍“golang中如何按照结构体的某个字段排序”,内容详细,步骤清晰,细节处理妥当,希望这篇“golang中如何按照结构体的某个字段排序”文章能帮助大家解决疑惑,下面跟着小编的思路慢慢深入,一起来学习新知识吧。概述gol...
    99+
    2023-06-30
  • oracle怎么根据指定字段顺序排序
    可以使用ORDER BY子句来根据指定字段进行排序。以下是一些示例:1. 升序排序:使用ASC关键字```SELECT * ...
    99+
    2023-09-09
    oracle
  • mysql按照数字大小排序的方法
    这篇文章主要介绍mysql按照数字大小排序的方法,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!mysql可以按照数字大小排序。MySQL提供了“ORDER BY”关键字来对查询结果中...
    99+
    2024-04-02
  • Java怎么将list集合数据按照时间字段排序
    这篇文章主要介绍了Java怎么将list集合数据按照时间字段排序的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇Java怎么将list集合数据按照时间字段排序文章都会有所收获,下面我们一起来看看吧。示例:&nbs...
    99+
    2023-07-05
  • golang中按照结构体的某个字段排序实例代码
    目录概述从大到小排序按照结构体的某个字段排序使用 sort.Stable 进行稳定排序附:根据结构体中任意字段进行排序总结概述 golang的sort包默认支持int, float6...
    99+
    2024-04-02
  • mysql中如何按照日期排序
    mysql中实现按日期排序的方法表结构如下:+---+------------+|id | addtime |+---+------------+| 5 |2020-03-06 |+---+------------+| 6 |2020-03...
    99+
    2024-04-02
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作