首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

Mysql的order特定值排在最后,其他rest排在第一

在MySQL中,可以使用ORDER BY语句对查询结果进行排序。当需要将特定值排在最后,而其他值排在第一时,可以使用CASE语句结合ORDER BY来实现。

具体的SQL语句如下:

代码语言:txt
复制
SELECT * FROM table_name
ORDER BY 
    CASE 
        WHEN column_name = '特定值' THEN 1
        ELSE 0
    END,
    column_name;

上述语句中,table_name为表名,column_name为需要排序的列名,特定值为要排在最后的特定值。

解释一下上述语句的逻辑:

  • 首先,使用CASE语句将特定值映射为1,其他值映射为0。
  • 然后,按照映射后的值进行排序,即特定值的映射值为1的排在最后,其他值的映射值为0的排在前面。
  • 最后,对于映射值相同的情况,按照原始的列值进行排序。

这样就可以实现将特定值排在最后,其他值排在第一的效果。

对于Mysql的ORDER BY语句,可以参考腾讯云的MySQL产品文档,了解更多关于ORDER BY的用法和示例:腾讯云MySQL ORDER BY文档

同时,腾讯云也提供了MySQL数据库的云服务,可以通过腾讯云MySQL产品来搭建和管理MySQL数据库实例,具体产品介绍和使用方法可以参考腾讯云MySQL产品官网:腾讯云MySQL产品介绍

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

SQL - nulls排序问题

默认是最大,所以在升序排列中null记录就会被排到最后。...在Oracle中,null默认最大 Oracle中同样认为null最大,也就是说,升序排列时null默认排在最后;降序排列时null默认排在最前。...在MySQL和SQLServer中,null默认最小 MySQL和SQLServer则相反,null默认是最小。当升序排列时null默认排在最前;降序排列时null默认排在最后。...nulls last/first具体用法 我们可以通过nulls last或者nulls first关键字来指定这些nullrecord是排在最后还是最前,如下: 1 select * from...student order by age desc nulls last; 该语句指定了降序排列时,null排到最后;需要注意是,该关键字只能搭配order by来使用。

1.3K20

Mysql学习笔记整理手册

继上一篇博客《Oracle学习笔记整理手册》之后,我再写一篇Mysql版本 PS:本博客收录自己工作中遇到学到一些mysql技能,有时间就更新整理一下 (1) str_to_date oracle有.../article/1398051 (3) 排序问题 oracle做数据排序时候,有时候可以用nulls first或者nulls last将null排在最前或者最后。...不过迁到Mysql的话,mysql并没有提供类似函数,所以要怎么实现?下面给出解决方法: null排在最后,用MysqlIF和ISNULL函数。...如果为空返回1,否返回0 select * from A order by IF(ISNULL(a),1,0),a desc 1 null排在最前,用MysqlIF和ISNULL函数。...如果为空返回0,否返回1 select * from A order by IF(ISNULL(a),0,1),a desc 1 具体可以参考我写这篇博客:https://cloud.tencent.com

1.4K20

MySQL笔记之常用用法整理手册

版本 PS:本博客收录自己工作中遇到学到一些mysql技能,有时间就更新整理一下 (1) str_to_date oracle有to_date函数,Mysql格式是str_to_date(‘2019...做数据排序时候,有时候可以用nulls first或者nulls last将null排在最前或者最后。...不过迁到Mysql的话,mysql并没有提供类似函数,所以要怎么实现?下面给出解决方法: null排在最后,用MysqlIF和ISNULL函数。...如果为空返回1,否返回0 select * from A order by IF(ISNULL(a),1,0),a desc 1 null排在最前,用MysqlIF和ISNULL函数。...如果为空返回0,否返回1 select * from A order by IF(ISNULL(a),0,1),a desc 1 具体可以参考我写这篇博客:https://blog.csdn.net

88230

为什么我建议你这样实现MySQL分页

先来回顾下之前提到MySQL分页2种常见方案: 第一种是基于limit分页方案,如: SELECT * FROM `user` ORDER BY id ASC LIMIT 100, 10; 第二种是基于...id,如果是第一页,那么可以直接去掉where子句,如: SELECT * FROM `user` ORDER BY id ASC LIMIT 10; 为了使得查询性能对比效果更加明显,本文使用测试表总记录数比较多...再看rows字段,第一种方案是400010,第二种方案是732288,第一种方案预估需要扫描行数比第二种方案预估需要扫描行数少,由于这个数是预估,不代表实际扫描行数,所以只能作为参考。...2种分页方案查询性能对比 为了保证试实验公平性,我们分别查询排在比较靠前数据、排在比较靠后数据、以及排在比较中间数据,以此来对比2种分页方案查询性能。...,每个查询都重复进行40次,最后取平均数作为该次查询平均查询时间。

73520

SQL分析函数,看这一篇就够了

几乎涵盖所有数据库,例如:Oracle、Hive、MySQL8.0、MaxComputer等。企业面试中,更是钟情分析函数问题,笔试、面试到基本跑不了。...COUNT :对一组内发生事情进行累积计数 MIN :在一个组中数据窗口中查找表达式最小 MAX :在一个组中数据窗口中查找表达式最大 AVG...二.排名分析函数 ROW_NUMBER :-- 正常排序[1,2,3,4] -- 必须有order_by RANK :-- 跳跃排序[1,2,2,4] -- 必须有order_by...DENSE_RANK :-- 密集排序[1,2,2,3] -- 必须有order_by FIRST :从DENSE_RANK返回集合中取出排在最前面的一个行 LAST...:从DENSE_RANK返回集合中取出排在最后面的一个行 FIRST_VALUE :返回组中数据窗口第一 LAST_VALUE :返回组中数据窗口最后一个

1.2K10

Oracle分析函数一——函数列表

,配合partition和order可以进行复杂最大求解 AVG :用于计算一个组和数据窗口内表达式平均值,配合partition和order可以进行平均最大求解 COUNT :对一组内发生事情进行累积计数...RANK :根据ORDER BY子句中表达式,从查询返回每一行,计算它们与其它行相对位置 DENSE_RANK :根据ORDER BY子句中表达式,从查询返回每一行,计算它们与其它行相对位置...FIRST :从DENSE_RANK返回集合中取出排在最前面的一个行 LAST :从DENSE_RANK返回集合中取出排在最后面的一个行 FIRST_VALUE :返回组中数据窗口第一...LAST_VALUE :返回组中数据窗口最后一个。...LEAD可以取跨行,减少自连接访问 ROW_NUMBER :返回有序组中一行偏移量,从而可用于按特定标准排序行号 STDDEV :计算当前行关于组标准偏离 STDDEV_POP:该函数计算总体标准偏离

63510

【Java 进阶篇】使用 SQL 进行排序查询

排序是通过 ORDER BY 子句完成,它通常紧随在 SELECT 语句后面。ORDER BY 子句允许我们指定一个或多个列,以便按照这些列来排序结果集。...具体来说,我们将 “High” 重要性产品排在第一位,然后是 “Medium”,最后是 “Low”。任何不在这些类别中产品都按照默认顺序排在最后。...NULL 处理 在排序数据时,我们还需要考虑如何处理 NULL 。默认情况下,NULL 通常会被排在排序顺序最前面(升序排序时)或最后面(降序排序时)。...在本文中,我们学习了如何使用 ORDER BY 子句进行排序,包括基本排序语法、多列排序、自定义排序顺序和处理 NULL 。...如果您想深入了解其他 SQL 操作或有任何问题,请随时提问或查阅相关文档。 感谢您阅读本文,希望您对 SQL 排序查询有了更清晰理解。祝您在数据库查询中取得成功!

24420

Oracle分析函数四——函数RANK,DENSE_RANK,FIRST,LAST…

DENSE_RANK_PART_ORDER FROM employees FIRST 功能描述:从DENSE_RANK返回集合中取出排在最前面的一个行(可能多行,因为可能相等),因此完整语法需要在开始处加上一个集合函数以从中取出记录...,然后前面的MIN函数从这个集合中取出薪水最高 LAST 功能描述:从DENSE_RANK返回集合中取出排在最后面的一个行(可能多行,因为可能相等),因此完整语法需要在开始处加上一个集合函数以从中取出记录...SAMPLE:下面例子计算按部门分区按薪水排序数据窗口第一对应名字,如果薪水第一有多个,则从多个对应名字中取缺省排序第一个名字 LAST_VALUE 功能描述:返回组中数据窗口最后一个...SAMPLE:下面例子计算按部门分区按薪水排序数据窗口最后一个对应名字,如果薪水最后一个有多个,则从多个对应名字中取缺省排序最后一个名字 代码如下: SELECT department_id...ROW_NUMBER 功能描述:返回有序组中一行偏移量,从而可用于按特定标准排序行号。

50610

端午安康,今天讲的是Flex布局

项目在主轴上对齐方式 flex-start 排在容器开始位置(默认) flex-end 排在容器末尾 center 排在容器中间 space-between 项目之间有相同大小空隙...flex-end:交叉轴终点对齐。 center:交叉轴中点对齐。 baseline: 项目的第一行文字基线对齐。...stretch(默认):如果项目未设置高度或设为auto,将占满整个容器高度。...所以,轴线之间间隔比轴线与边框间隔大一倍。 stretch(默认):轴线占满整个交叉轴。 项目 order 项目排列顺序,数值越小,排列越靠前。...默认为1,自动缩小 flex-basis 设置项目宽度,内容超出范围会自动变大 align-self 允许单个项目与其他项目有不同对齐方式 <

24840

模拟 ROW_NUMBER() 函数

MySQL 在 8.0 版本推出了窗口函数,我们可以很方便地使用 row_number() 函数生成序号。...比如,对于 emp 表,我们希望根据员工入职时间排序,入职越早排在越前面,序号从 1 开始。...图2 组内按入职时间升序排序 那在 MySQL 8.0 版本之前呢,我们要怎么模拟 row_number() 函数? 方法还是比较多,接下来给大家展示一些经常用到实现方法。...BY deptno, hiredate) t 使用用户变量模拟窗口函数需要注意两个地方: 排序,窗口函数里面用到分组、排序字段,在使用用户变量 SQL 中一定会出现在排序语句里面,而且是用于分组字段排在前面....* FROM emp a ORDER BY deptno, 1 要确保生成序号无误,只需要清楚在关联条件里一定是主表 hiredate 字段大于关联表 hiredate

1.1K20

PostgreSQL从小白到专家 - 第25讲:窗口函数

上面第一种应用中将聚合函数书写在语法“”中,就能够当作窗口函数来使用了。聚合函数根据使用语法不同,可以在聚合函数和窗口函数之间进行转换。...更确切地说,窗口函数只能书写在一个特定位置。这个位置就是 SELECT 子句之中。反过来说,就是这类函数不能在WHERE 子句或者 GROUP BY 子句中使用。...作为窗口函数使用聚合函数--计算price累计结果select name,price, SUM(price) over (order by name) as current_sumfrom product...;--计算SAL累计结果select ename,sal,SUM(sal) over (ORDER BY ename) as current_sumfrom emp;所有的聚合函数都能用作窗口函数,...在 SELECT 语句最后,使用 ORDER BY子句进行指定按照 ranking 列进行排列,结果才会顺序显示,但是如果使用了,会打乱原本窗口函数出来显示结果。

29110

MySQL ORDER BY IF() 条件排序

使用ORDER BY配合IF语句 比如我想将species为snake行数,单独列出来,我可以这样查询 SELECT * FROM pet ORDER BY if (species='snake',0,1...这样,查询就等于第一步是查询隐藏属性0,1,然后进行DESC排序,因为species=snake返回是0,所以进行倒序排列时,就被排在最后 以此类推,你在进行隐藏属性优先排序同时,对于剩下排序...使用ORDER BY配合IN语句 上面一个是满足单个条件,返回0或者1,那如果需要用到一个范围呢?...你可以使用IN语句 比如下面,我要求把出生日期为1993-02-04或者1989-05-13行数,排在最后 SELECT * FROM pet ORDER BY birth IN('1993-02-04...这样的话,birth IN语句会进行判断,如果birth满足条件,返回1,不满足,返回0 所以,满足条件两行,因为返回是1,进行ASC排序时候,就被放置在了最后

3.7K50

故障分析 | ClickHouse 集群分布式 DDL 被阻塞案例一则

作者:任坤 现居珠海,先后担任专职 Oracle 和 MySQL DBA,现在主要负责 MySQL、mongoDB 和 Redis 维护工作。...select * from zookeeper where path='/clickhouse/task_queue/ddl' order by ctime desc\G 刚刚发起创建分布式表 ddl...排在第一位,上述截图中 optimize table 排在第23,说明被其阻塞 ddl 有22条之多,开发也确认最近两天 ddl 任务在该节点上都没有成功。...尝试重启ck实例也卡住,最后只能Kill -9。 重启实例后该任务依然存在,而且执行了10多分钟没有要结束意思,kill操作仍然无效。...最后,19.x版本已经很旧了,我们在使用过程中遭遇了各种问题,要尽快升级到20.x系列 本文关键字:#分布式ddl# #zookeeper#

95440
领券