`

数据排序时对null值处理

阅读更多
升序排列,默认情况下,null值排后面。

降序排序,默认情况下,null值排前面。

有几种办法改变这种情况:

(1)用 nvl 函数或decode 函数 将null转换为一特定值
如:
select m.nechen, m.lastlogtime           
from memberinfo m
where   m.PERSONALSSTATE = '征友进行中'
   and (to_number(to_char(m.BIRTHDAY, 'yyyy')) between 1974 and 1983)
   and (m.PHOTOPATH is not null)
   and m.SEX = '女'
   order by decode(m.LASTLOGTIME,null,to_date('2008-3-18','yyyy-MM-dd'),m.LASTLOGTIME) desc


(2)用case语法将null转换为一特定值,但使用中发现,对日期型null识别不了。(oracle9i以后版本支持。和sqlserver类似):
order by (case mycol when null then '北京漂客'     else   mycol   end)

(3)使用nulls first 或者nulls last 语法。 (但hibernate不支持)
    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

如果要想让含有null的列按照自己的意愿进行排序,可做如下处理。
分享到:
评论

相关推荐

    oracle中对null值的处理

    理解Oracle如何处理NULL值是数据库管理与查询中的重要一环,尤其对于数据完整性、查询逻辑以及函数计算等方面。 1. NULL的定义: NULL不是代表“无”或“零”,而是表示数据缺失或不可用。在SQL中,NULL被视为一种...

    datax抽取数据到hdfs的null值变成''(引号)的问题

    mysql的null值通过datax抽取到hdfs,会变成引号,这不是我们所需要的,所以需要修改一下datax的源码

    解决了IoTDB第一值为null取最近一个有值的记录值返回的bug

    5. **性能测试**:修复后的系统经过了大量的性能测试和稳定性测试,确保在不同场景下都能正确处理null值,并保持良好的查询性能。 这个修复对于依赖IoTDB的IoT应用来说至关重要,因为它确保了即使在数据存在缺失的...

    关于sql中求平均值出现null值的解决方案

    记住,处理null值是数据清洗和预处理的重要环节,确保了我们的分析结果准确无误。 此外,文件列表中的"网络信息采集发布工具V7.0最新版.exe"可能是用于自动抓取和发布Web信息的工具,对于数据分析和SQL操作可能会...

    spring mvc拦截器过滤json中的null值

    在某些情况下,为了保持数据的整洁和避免后端处理null值时出现异常,我们需要在数据传输前过滤掉这些null值。本教程将详细介绍如何使用Spring MVC的拦截器来实现这一功能。 首先,了解拦截器(Interceptor)在...

    为什么不建议给MySQL设置Null值?《死磕MySQL系列 十八》.doc

    在本期中,我们将讨论为什么不建议给 MySQL 设置 Null 值,并分析 Null 值对数据统计的影响。 1. Null 值对统计的影响 在 MySQL 中,Null 值的存在可能会导致数据统计不准确。例如,在使用 count 函数时,如果存在...

    Mysql实现null值排在最前/最后的方法示例

    我们已经知道 MySQL 使用 SQL SELECT 命令及 WHERE 子句来读取数据表中的数据,但是当提供的查询条件字段为 NULL 时,该命令可能就无法正常工作。 为了处理这种情况,MySQL提供了三大运算符: IS NULL: 当列的值是 ...

    sql中null值对count的影响

    ### SQL中的NULL值对COUNT函数的影响 在SQL中,`NULL`值的处理是一个非常重要的概念,尤其是在使用聚合函数如`COUNT`时。本篇文章将详细介绍`NULL`值如何影响`COUNT`函数的行为,并通过具体的示例来帮助理解这一...

    数据库为空时,文本框不显示null

    本文将围绕标题与描述中的核心内容展开讨论,包括:为何会出现null值、如何处理null值以及具体的实现代码示例等。 ### 一、为何会出现null值 在数据库中,字段值可以被设置为NULL。NULL是一种特殊的数据类型,用于...

    26 一行数据中的多个NULL字段值在磁盘上怎么存储.pdf

    在SQL技术中,为了高效地存储和处理NULL值,引入了二进制位存储的方法。这种方法用一个位(bit)来表示字段是否为NULL。通常,这个位被设置为1表示该字段值为NULL,设置为0表示该字段有实际的值。这种方法的优势在于...

    ORA-01480STR 绑定值的结尾 Null字符缺失 的问题原因及解决办法

    在Oracle数据库操作中,"ORA-01480: STR 绑定值的结尾 Null 字符缺失"是一个常见的错误,通常与数据插入或更新时的格式问题有关。这个错误通常意味着在处理字符串数据时,Oracle无法找到预期的NULL终止符,这可能是...

    Oracle数据库中对null值的排序及mull与空字符串的区别

    在对业务数据排序时候,发现有些字段的记录是null值,这时排序便出现了有违我们使用习惯的数据大小顺序问题。在Oracle中规定,在Order by排序时缺省认为null是最大值,所以如果是ASC升序则被排在最后,而DESC降序则...

    数据库中复杂的Null问题

    在数据库设计中,"复杂的Null问题"是一个常见且重要的议题,尤其对于数据库开发人员来说,理解和处理Null值是日常工作中不可或缺的一部分。Null在SQL中表示“未知”或“无值”,但它的行为并不像常规的空字符串或者0...

    《ETL数据整合与处理(Kettle)》教学教案 —03记录处理.pdf

    1. **排序记录**:在进行数据处理时,排序通常作为预处理步骤,为去除重复记录或执行其他特定操作做准备。排序组件允许用户根据一个或多个字段对数据进行升序或降序排列。 2. **去除重复记录**:重复数据可能导致...

    检查记录集的的栏位是否是null值 CheckNull

    因此,在进行任何进一步的数据处理之前,确保能够正确识别并处理这些NULL值是非常重要的。 #### 2. **VB.NET环境下的实现方法** 在VB.NET环境中,可以使用ADO (ActiveX Data Objects) 对象模型来访问数据库。通过...

    C#中 Json 序列化去掉null值的方法

    在 C# 中, Json 序列化是一种常用的数据交换格式,但是在实际应用中,我们经常会遇到对象的某些属性为 null 的情况,这时候我们需要将这些 null 值去掉,下面我们就来讨论如何在 C# 中实现 Json 序列化去掉 null 值...

    MySQL NULL 值处理实例详解

    MySQL NULL 值处理 我们已经知道MySQL使用 SQL SELECT 命令及 WHERE 子句来读取数据表中的数据,但是当提供的查询条件字段为 NULL 时,该命令可能就无法正常工作。 为了处理这种情况,MySQL提供了三大运算符: IS ...

    行业-26 一行数据中的多个NULL字段值在磁盘上怎么存储.rar

    对于大数据量的应用,如何有效处理NULL字段值是优化数据库性能的关键因素之一。 在实际应用中,为了避免过多的NULL值,有时会选择使用默认值,或者改变表结构,引入额外的“占位”记录。此外,合理的数据建模和规范...

    解决服务器返回null的问题.zip

    "解决服务器返回null的问题.zip"这个压缩包文件提供了解决这一问题的方案,特别关注于文本和富文本中的null值处理。下面将详细介绍如何通过runtime来解决这个问题,以及涉及到的关键技术点。 首先,理解null值在...

    oracle使用order by排序null值如何处理

    除了上述两种直接的方法,还可以使用一些函数来处理NULL值,比如`NVL`、`NVL2`、`DECODE`以及`CASE...WHEN...END`等,这些函数可以帮助我们在排序时给NULL值赋予一个特定的值,从而达到期望的排序效果。例如,使用`...

Global site tag (gtag.js) - Google Analytics