MySQL 排序使 null 排最后

这篇具有很好参考价值的文章主要介绍了MySQL 排序使 null 排最后。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

MySQL 排序使 null 排最后

第一种方法:

mysql 会把 null 当作最小值来排序,我们想根据某一字段升序【例如 sort】,又想让值为 null 排在最后面,可以在排序的字段加上负号,例如 -sort,这时 null 就变成最大值了,而其他非 null 值的排序也会反过来,这时再来个降序 desc,就可以实现根据某一字段升序,且值为 null 排在最后面

select sort from `table` order by -sort desc;

第二种方法:

也可以通过 isnull 判断某个字段是否为 null 进行排序,isnull(sort)

select sort from `table` order by isnull(sort);

参考:https://blog.csdn.net/sinat_18133641/article/details/106080743文章来源地址https://www.toymoban.com/news/detail-595223.html

到了这里,关于MySQL 排序使 null 排最后的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • MySQL对NULL值处理

    在使用数据库时,有时需要表示未知值,这时可以使用NULL值表示。引入NULL值后,会对原有的使用产生影响,这里记录下常见的场景,以做记录。 在MySQL中,NULL值表示一个未知值,表示不可知、不确定。NULL值不同于0或空字符串’\\\'。NULL不与任何值相等,即使是其本身。 表中

    2024年02月10日
    浏览(39)
  • MySQL 中有关 NULL 的三个坑

    mysql sum 函数、count 函数,以及 NULL 值条件可能踩的坑。 SELECT SUM(score) FROM `person` ;    null SELECT COUNT(score) FROM `person`;    0 select id from person where score=NULL;    null 显然,这三条 SQL 语句的执行结果和我们的期望不同: 虽然score 是null,但 sum 的结果应该是 0 才对; 虽然 score 是

    2024年01月16日
    浏览(32)
  • mysql null 值查询不出来问题

    最新遇到mysql null 值查询的问题,当查询这个字段有的为null 有的不为null  该字段查询条件查询为null值得将不显示。 举例 新建表 test_user  name和phone得值默认值为null  我们添加一些数据  查询下name 不是张三得数据 select * from test_user where name !=\\\'张三\\\'  id 为4得为啥查不出来?

    2024年02月15日
    浏览(38)
  • mysql获取日期 本月 上月 下月 第一天 最后一天

    unix_timestamp()精确到秒级别,from_unixtime第一个参数只接受bigint类型 -- 本月第一天 select date_add(curdate(), interval - day(curdate()) + 1 day);   -- 本月最后一天 select last_day(curdate());   -- 上个月第一天 select date_add(curdate()-day(curdate())+1,interval -1 month);   -- 上个月最后一天 select last_day(date_a

    2024年02月12日
    浏览(57)
  • Mysql中的not in和null

    当我们在MySQL中使用not in时,例如 如果not in(…)数据中有null时,返回的结果是空表。 错误在于判断 a not in B的方法的本质是a 使用 != 与B中的每一条进行判断 比如 3 not in (null,1,2) ,如果我们以3在不在null,1,2中来理解的话,肯定会认为返回结果是true; 但实践过程是 3 != null 3 !

    2024年02月06日
    浏览(47)
  • MySQL 中NULL和空值的区别

    简介 NULL也就是在字段中存储NULL值,空值也就是字段中存储空字符(’’)。 区别 1、空值不占空间,NULL值占空间。当字段不为NULL时,也可以插入空值。 2、当使用 IS NOT NULL 或者 IS NULL 时,只能查出字段中没有不为NULL的或者为 NULL 的,不能查出空值。 3、判断NULL 用IS NULL 或者

    2024年02月15日
    浏览(55)
  • MySQL数据库干货_11—— MySQL中的非空约束(Not Null)

    非空约束(Not Null) 添加非空约束 使用DDL语句添加非空约束。 示例: 向 emp 表中的 salary 添加非空约束。 删除非空约束 使用DDL语句删除非空约束。 示例: 删除emp表中salary 的非空约束。 创建表时添加约束 查询表中的约束信息: 示例: 创建 depts 表包含 department_id 该列为主键且

    2024年02月07日
    浏览(54)
  • mysql的主键索引为什么不能null

    这是一个非常奇怪且有趣的问题。可以通过官方文档进行解读 https://dev.mysql.com/doc/refman/5.7/en/glossary.html A special value in SQL, indicating the absence of data. Any arithmetic operation or equality test involving a NULL value, in turn produces a NULL result. (Thus it is similar to the IEEE floating-point concept of NaN, “not

    2024年02月14日
    浏览(75)
  • MySQL索引可能失效之or、is null、is not null、不等于(!=,<>)、联合索引

    1、如果 A,B 两列都有索引,那么  select * from Table where A=a or B=b;  会走索引吗? 答案:会,因为 A,B都有索引; 2、如果 A,B有索引,但是C没有索引; select * from Table where A=a or B=b or C =c; 会走索引吗? 答案:不会走,因为C是or的形式,且没有索引 3、如果 建了A B联合索引,但是

    2024年02月11日
    浏览(38)
  • mysql用is null查不生效的一种情况

    今天发现了一个诡异的情况: 首先是在记录中可以明显看到 update_time有null记录。 但用一下sql查询: 得到结果却是0条。 但应该无论如何都要大于等于1条。 因此,我查询了这个字段的长度 发现是19 因此这个NULL根本就不是正常的null值。 看了一下建表语句 发现默认是’0000-

    2024年02月16日
    浏览(51)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包