SQL order by 语句对null值排序
记order by 语句对null值排序:
MySQL:
- 将null值放在最后
select *
from user
order by i f(isnull(sort), 1, 0),sort asc,publish_time desc;
- 将null值放在最前
select *
from user
order by if(isnull(sort), 0, 1),sort asc,publish_time desc;
Oracle:
oracle认为 null 最大。
升序排列,默认情况下,null值排后面。
降序排序,默认情况下,null值排前面。
(1)用 nvl 函数或decode 函数 将null转换为一特定值
(2)用case语法将null转换为一特定值(oracle9i以后版本支持。和sqlserver类似):
order by (case mycol when null then ’北京漂客’ else mycol end)
(3)使用nulls first 或者nulls last 语法。
这是oracle专门用来null值排序的语法。
- nulls first :将null排在最前面。如:
select * from mytb order by mycol nulls first
- null last :将null排在最后面。如:
select * from mytb order by mycol nulls last
SqlServer:
sqlserver 认为 null 最小。
升序排列:null 值默认排在最前。
要想排后面,则:
order by case when col is null then 1 else 0 end ,col
降序排列:null 值默认排在最后。
要想排在前面,则:
order by case when col is null then 0 else 1 end , col desc
SQL order by 语句对null值排序的更多相关文章
- Oracle SQL篇(一)null值之初体验
从我第一次正式的写sql语句到现在,已经超过10年的时间了.我写报表,做统计分析和财务对账,我一点点的接触oracle数据库,并尝试深入了解.这条路,一走就是10年,从充满热情,到开始厌 ...
- SQL Server表分区的NULL值问题
SQL Server表分区的NULL值问题 SQL Server表分区只支持range分区这一种类型,但是本人觉得已经够用了 虽然MySQL支持四种分区类型:RANGE分区.LIST分区.HASH分区 ...
- (七)修改上一条SQL语句,NULL值的滤空函数nvl
修改上一条SQL语句 1.用c命令来修改(c 即 change ) 默认,光标闪烁位置指向上一条SQL语句的第一行.输入二则定位到第二行. c /错误的关键字/正确的关键字 SQL form emp; ...
- sql 语句系列(null 值处理)[八百章之第二章]
查找只存在一个表中的数据 有两张表: EMP: select * from emp DEPT: 他们有共同的属性:deptno 现在要查询EMP 中的deptno不等于DEPTNO的deptno项. ...
- oracle 关于null值排序
在oracle中根据字段来desc排序的话null值可能会在数据的最前面.然而有时候我们查看数据的时候并不希望能够在前面看到这些null值的排序数据. 因此我查了一下: 1.排序的时候运用nvl(). ...
- MySQL中order by中关于NULL值的排序问题
MySQL中order by 排序遇到NULL值的问题 MySQL数据库,在order by排序的时候,如果存在NULL值,那么NULL是最小的,ASC正序排序的话,NULL值是在最前面的. 如果我们 ...
- oracle自定义排序和NULL值排序
1.自定义顺序 当我们希望将某个查询结果指定的显示顺序展示的时候 order by case when column1=1 then 0 case when column1=1 then 1 else ...
- SQL order by语句
关于order by: order by 语句用于根据指定的列对结果集进行排序,默认按照升序排列. 1. select 字段名 from 表名 where 条件 order by 字段名1 asc/ ...
- 【Oracle】Oracle 的过程化SQL(PLSQL)中NULL值的处理
下面是NULL的几个注意点: 1.NULL值既不是空格也不是0. 2.给表插入值的时候,如果没有给列指定列值,则默认为NULL. 3.当算术表达式里包含NULL值时,其计算结果也是NULL值. 这时候 ...
随机推荐
- ExtJS 布局-VBox布局(VBox layout)
更新记录: 2022年6月11日 优化文章结构. 2022年6月9日 发布. 2022年6月1日 开始. 1.说明 vbox布局类似auto布局,将子组件一个接一个垂直向下放置,既可以在水平方向也可以 ...
- Linux修改默认ssh22端口
1.检查端口是否可用 使用下面的命令检查您想增加或修改的端口号是否被占用,执行命令后如果没有任何打印,说明这个端口没有被占用 netstat -lnp|grep 23456 2.修改配置文件 ssh配 ...
- Django【查询】 基础回顾与深入应用
官方Django3.2 文档:https://docs.djangoproject.com/en/3.2/topics/db/queries/ 本文大部分内容参考官方3.2版本文档撰写,仅供学习使用 ...
- Tapdata 在线研讨会:如何快速上手 Tapdata Cloud?
偶然接触到 Tapdata Cloud,据说不仅可以实现异构数据实时同步,还永久 100% 免费,但就是不知道怎么获取.怎么用? 打开相关文档逐渐陷入迷茫,术语."黑话"随处可见, ...
- JAVA编程练习01作业
1.已知y与x的关系:,要求:从键盘上输入一个x的值,输出其对应的y的值. 2. 输入一个圆半径(r),计算并输出圆的面积和周长. 3.输入一个三位正整数n,输出其个位.十位和百位上的数字. 4.根据 ...
- 从入门到爱上Git
时间不在于你拥有多少,而在于你怎样使用------时之沙 · 艾克 一.Git设置 1.1 Git全局设置 当我们安装好Git以后,我们需要对Git进行账号.邮箱的设置 设置用户信息 git conf ...
- 一篇文章带你走进meta viewport的世界
一.什么是 meta 标签? 可提供有关页面的元信息 二.为什么需要移动端适配? 因为我们在 pc 端上看到的页面都是比较大的,在 pc 端上都是正常显示的,自动不会被进行缩放,除非手动进行放大或缩小 ...
- 常用的函数式接口_Predicate接口和常用的函数式借楼_Predicate_默认方法and
package com.yang.Test.PredicateStudy; import java.util.function.Predicate; /** * java.util.function. ...
- 众妙之门玄之又玄,游戏系统中的伪随机(Pseudo-Randomization)和真随机(True-Randomization)算法实现Python3
原文转载自「刘悦的技术博客」https://v3u.cn/a_id_212 有人说,如果一个人相信运气,那么他一定参透了人生.想象一下,如果你在某款moba游戏中,在装备平平,队友天坑的情况下,却刀刀 ...
- 天人合一物我相融,站点升级渐进式Web应用PWA(Progressive Web Apps)实践
原文转载自「刘悦的技术博客」https://v3u.cn/a_id_216 PWA(Progressive web apps,渐进式 Web 应用)使用现代的 Web API 以及传统的渐进式增强策略 ...