MySQL中order by排序将NULL排在最前或最后面

2023-05-16

NULL的意思表示什么都不是,或者理解成“未知”也可以,它与任何值比较的结果都是false
注意:
默认情况下,MySQL会认为NULL值比其他类型的数据小, 也就是说:在order by排序的时候,NULL是最小的。

前提:测试数据

idagename
112张三
232李四
322王五
4NULL赵六
512杨七

ASC正序排序

ASC默认NULL值是在最前面的

select * from user order by age asc;
执行结果:
id age name
4 NULL 赵六
1 12  张三
5 12  杨七
3 22  王五
2 32  李四
12345678

要想ASC排序让NULL在最后面,写法如下:

select * from user order by age is null asc ,age asc;
执行结果:
id age name
1 12  张三
5 12  杨七
3 22  王五
2 32  李四
4 NULL 赵六
12345678

DESC降序排序

默认NULL值是在最后面的

select * from user order by age desc;
执行结果:
id age name
2 32  李四
3 22  王五
1 12  张三
5 12  杨七
4 NULL 赵六
12345678

要想DESC排序让NULL在最前面,写法如下:

select * from user order by age is null desc ,age desc;
执行结果:
id age name
4 NULL 赵六
2 32  李四
3 22  王五
1 12  张三
5 12  杨七
12345678
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

MySQL中order by排序将NULL排在最前或最后面 的相关文章

  • C 中的 NULL 是否需要/定义为零?

    在我的 GCC 测试程序中 NULL 似乎为零 但维基百科说NULL只需要指向不可寻址的内存 有编译器做吗NULL非零 我很好奇是否if ptr NULL 是比更好的练习if ptr NULL is guaranteed to be zer
  • 使用 MySQL 5、简单成员资格提供程序、ASP.NET MVC4 和实体框架 5

    我在尝试着 使用 ASP NET MVC 4 对 MySQL 使用基于简单成员资格提供程序的身份验证默认 Web 应用程序配置为使用 MySQL 使用以下给出的教程 http www nsilverbullet net 2012 11 07
  • MySQL 索引创建速度很慢(在 EC2 上)

    我有一张相当简单的桌子 requestparams requestid varchar 64 NOT NULL requestString text ENGINE MyISAM 使用 LOAD DATA 填充表后 我正在更改架构并将 req
  • 如何在 mysql 正则表达式中匹配大写 ÅäÖ

    当我在 MySQL 中进行 REGEXP 比较时 我得到了瑞典字符大写版本的一些奇怪结果 我正在使用 utf8 swedish ci 排序规则 我想查找大写单词 SELECT ster REGEXP BINARY A Z a z 应该返回
  • 用户登录时如何更新updated_at列?

    我正在尝试更新updated at每次用户登录时 列到当前时间 但我收到以下错误 InvalidArgumentException 找不到四位数年份 数据丢失 PHP input Input all remember Input has r
  • 转储中的 MySQL 标志

    在查看 mySQL 转储时 我发现了一些东西并且想知道它们是什么 I see 50001 DROP TABLE IF EXISTS xxx 标志 50001 是什么 有它们含义的列表吗 它在 MySQL 的论坛 邮件列表上进行了讨论here
  • 将文件保存为 MYSQL 数据库中的 blob 或文件路径

    我知道这些问题是常见问题之一 但我需要您针对具体案例提供帮助 我正在开发一个应用程序 其中一些用户可以添加订单 一些用户可以执行这些订单 这些订单非常具体 因此只有有限数量的用户可以添加它们 然后 为每个订单生成三个文档 每个文档的大小不超
  • AWS EMR PySpark 连接到 mysql

    我正在尝试使用 jdbc 通过 pyspark 连接到 mysql 我可以在 EMR 之外完成此操作 但是当我尝试使用 EMR 时 pyspark 无法正确启动 我在我的机器上使用的命令 pyspark conf spark executo
  • 创建前判断MySQL表索引是否存在

    我们系统的自动数据库迁移过程涉及运行包含新表定义及其附带索引的 sql 脚本 仅当这些表和索引尚不存在时 我才需要能够创建它们 表是通过使用 IF NOT EXISTS 来处理的 但创建索引时不存在这样的语法 我尝试编写一个存储过程 如下所
  • 什么时候空值在列中“安全”?

    设计数据库时是否存在允许列为空与 3nf 规范化的一般经验法则 我有一个表 其中的列主要由空值 85 组成 但表大小不超过 10K 记录 不是很大 它主要用于日志记录和记录保存 因此大多数事务将是插入和选择 而不是更新 我试图同时考虑性能和
  • 当 mysql_connect 不适用于 IIS 上的 PHP 时,不会返回任何错误消息

    我是 PHP 和 MySQL 的新手 最近在已经运行 IIS v6 的 Windows Server 2003 服务器上安装了 PHP v5 3 10 和 MySQL v 5 5 21 PHP 运行 我已经从 MySQL 5 5 命令行客户
  • 如何调试 MySQL 上的锁等待超时?

    在我的生产错误日志中 我偶尔会看到 SQLSTATE HY000 一般错误 1205 超过锁等待超时 尝试 重新开始交易 我知道当时哪个查询正在尝试访问数据库 但是有没有办法找出哪个查询在那个精确时刻拥有锁定 暴露这一点的是这个词交易 从该
  • 确定非空列表条目是否“连续”的 Pythonic 方法

    我正在寻找一种方法来轻松确定列表中所有非 None 项目是否出现在单个连续切片中 我将使用整数作为非 None 项目的示例 例如 列表 None None 1 2 3 None None 满足我对连续整数条目的要求 相比之下 1 2 Non
  • Opencart 2.2.0 启用按制造商搜索

    我正在使用 OC 2 2 0 并一直在努力解决以下问题 示例 我在标题搜索中输入西门子 然后单击 显示所有结果 我的搜索页面将显示所有结果 问题是 结果列表仅包含名称中包含西门子的产品 我需要的是展示all 搜索结果列表中属于该制造商的产品
  • 提交表单问题... Enter key

    我有一个包含几个下拉列表和一个文本字段以及一个按钮的表单 当我单击按钮时 将调用 ajax 函数 ajax 然后调用一个 php 函数 该函数从 mysql 数据库获取结果 问题是我不能通过在表单中 按回车键来完成同样的事情 页面只会刷新
  • 显示不同表中的名称而不是 ID

    我有 2 张桌子 Category带主键ID和列Name Employee带主键ID和列Category id Note Category id现在显示ID正确地 我想展示Name代替ID对于输出Employee Attempt categ
  • 如何设置 MySQL Workbench 自动断开与服务器的连接?

    有没有办法设置Workbench在空闲时自动与服务器断开连接 命令行 mysql 客户端在空闲时断开连接 然后在运行查询时重新连接 我也希望 Workbench 自动断开连接 我无法修改服务器的超时设置 但命令行客户端可以按照当前服务器设置
  • 错误:mysqladmin:刷新失败;错误:“未知错误”

    当我厌倦了每天从 Cron Daemon 收到电子邮件时 我的问题就开始了 电子邮件如下所示 From Cron Daemon lt email protected cdn cgi l email protection gt Date 20
  • Azure 上的 Laravel 应用程序:用户“azure”@“localhost”的访问被拒绝

    我正在将 Laravel 应用程序部署到 Azure Web 应用程序 Mysql 到目前为止我执行了以下步骤 1 在应用程序中激活Mysql 2 连接到 BitBucket 存储库并确保代码已同步 3 创建 env文件并设置数据库变量如下
  • 从 MySQL 执行 shell 命令

    我知道我正在寻找的可能是一个安全漏洞 但由于我设法在 Oracle 和 SQL Server 中做到了这一点 所以我会尝试一下 我正在寻找一种从 MySQL 上的 SQL 脚本执行 shell 命令的方法 如有必要 可以创建和使用新的存储过

随机推荐

  • MFC HttpClient

    HttpClient h ifndef HTTPCLIENT H define HTTPCLIENT H include lt afxinet h gt include lt string gt using namespace std de
  • 用matlab画简单曲线,并进行标注、图例、加网格,等操作

    用matlab画简单曲线 xff0c 并进行标注 图例 加网格 xff0c 等操作 工具 原料 matlab 软件 方法 步骤 本人采用的是r2012版本 xff0c 现简单的画两条曲线 xff0c 一条正弦 一条余弦 xff0c 线宽不同
  • Python程序的错误:变量未定义(NameError: name ‘mesage’ is not defined.)

    Python程序的错误种类 Python程序的错误分两种 一种是语法错误 xff08 syntax error xff09 这种错误是语句的书写不符合Python语言的语法规定 第二种是逻辑错误 xff08 logic error xff0
  • Ubuntu下PyCharm安装中文汉化包

    1 首先打开终端 2 进入临时文件夹 xff1a cd tmp 3 下载汉化包 xff1a git clone https github com ewen0930 PyCharm Chinese 若提示没有git 则根据提示安装即可 xff
  • 【matlab】矩形窗/三角窗/hanning窗/hamming窗/blackman窗的频率响应图

    File Matlab的窗函数 矩形窗 功能 xff1a 降低旁瓣水平 参数 xff1a N 61 51 61 61 61 61 61 61 61 61 61 61 61 61 61 61 61 61 61 61
  • eclipse无法导入项目由于“某些项目因位于工作空间目录中而被隐藏”

    从eclipse左侧的 资源管理器 中右击选择 删除项目 的方式删除项目后 xff0c 右击 导入项目 导入原来删除了的同名项目时 xff0c 会无法导入项目 xff0c 显示 某些项目因位于工作空间目录中而被隐藏 原因 xff1a ecl
  • 继承中父类与子类的构造与析构顺序

    父类与子类的构造与析构顺序 继承中的顺序如下 xff1a 先构造父类 xff0c 在构造子类 析构顺序与构造顺序相反 span class token macro property span class token directive ke
  • 基于ROS+CANopen的SocketCAN驱动在Ubuntu下的应用说明

    基于ROS 43 CANopen的SocketCAN驱动在Ubuntu20 04 18 04上的应用说明 摘要 Abstract keywords 在Ubuntu 20 04或者18 04里 xff0c 运用ROS下的CANopen消息机制
  • HDFS详解一

    前言 xff1a 一 HDFS的一些基本概念 xff1a 数据块 xff08 block xff09 xff1a 大文件会被分割成多个block进行存储 xff0c block大小默认为128MB 每一个block会在多个datanode上
  • potplayer播放器没有声音的解决方案

    potplayer播放器没有声音的解决方案 最近突然发现电脑上的potplayer播放视频文件的时候只有图像没有声音了 xff0c 卸载后重装依旧如此 经一番摸索 xff0c 解决方法如下 1 在播放界面按一下 m 键 xff0c 可以开启
  • 解决Mysql安装之后没有my.ini配置文件问题

    详记MySql问题大全集 三 安装之后没有my ini配置文件怎么办 系列目录 一 安装MySql 二 安装并破解Navicat 三 没有my in配置文件怎么办 四 设置MySql的大小写敏感 五 重置MySql登陆密码 之前说过 xff
  • 一个简单的环形进度条组件 vue-circleprogressbar

    vue circleprogressbar 一个简单的环形进度条组件 最近在开发可视化大屏项目中经常会用到环形进度条 但是常用的echarts组件对环形进度条的支持不太好 写起来比较麻烦 就想着自己写一个VUE的环形组件 满足自己日常开发需
  • Hbuilder如何创建并运行Vue项目

    在Hbuilder中开发Vue项目是非常快捷的 xff0c 下面小编给大家分享一下如何在Hbuilder中创建并运行Vue项目 方法 步骤 1 首先打开Hbuilder创建一个新项目 xff0c 如下图所示 2 Hbuilder如何创建并运
  • 教大家防止Jar包被反编译

    xff08 待验证 xff09 方法就是 xff0c 向Jar注入无效代码 xff08 不合法的 xff0c 或者根本不是代码的字符串 xff09 那么无效的代码又怎么能正确运行呢 xff1f 答案就是 xff0c 你要保证你的代码永远不会
  • 推荐3个小程序开源组件库——Vant、iView、ColorUI

    推荐3个小程序开源组件库 在进行小程序开发时 xff0c 经常会遇到编写组件方面的阻碍 xff0c 这让我们花费大量的时间在页面以及 CSS 样式编写上 因此可以使用开源组件库 xff0c 有些复杂的组件可以直接拿来使用 xff0c 节省开
  • 试图加载格式不正确的程序。 (异常来自 HRESULT:0x8007000B)

    两种原因 第一种为程序的运行以平台系统位数不匹配 第二种则是该死的VS整出来的 一般在下面三种情景下会发生 1 64位系统上C 调用32位的C 43 43 dll 2 64位系统上IIS发布含有32位的 dll应用程序时 3 64位系统上编
  • 怎么进bios设置硬盘启动顺序|电脑bios硬盘启动设置方法

    怎么在BIOS里设置硬盘启动 xff1f 电脑在启动时会从硬盘寻找引导文件 xff0c 从而启动系统 xff0c 如果硬盘不是第一启动项 xff0c 或者有两个硬盘 xff0c 就会导致系统无法启动 xff0c 这时候就需要进BIOS设置硬
  • Windows计划任务执行时不显示窗口的问题

    最近开发了工具 xff0c 带界面的 xff0c 需要定时执行的 xff0c 为了方便直接用Windows计划任务做定时了 跑了一段时间发现 xff0c 进程中也有 xff0c 就是看不到程序的界面 xff0c 进程的执行貌似也阻塞了 从网
  • JAVA的@EXCEL导出导入常用注解汇总

    在实际开发中经常需要使用导入导出功能来加快数据的操作 在项目中可以使用注解来完成此项功能 在需要被导入导出的实体类属性添加 64 Excel注解 参数类型默认值描述sortintInteger MAX VALUE值越小越靠前readConv
  • MySQL中order by排序将NULL排在最前或最后面

    NULL的意思表示什么都不是 xff0c 或者理解成 未知 也可以 xff0c 它与任何值比较的结果都是false 注意 xff1a 默认情况下 xff0c MySQL会认为NULL值比其他类型的数据小 xff0c 也就是说 xff1a 在