sql 统计汇总 将null 排在最后

sql指南之null值用法 阅读详情
    <select id="selectScoreInfo" resultType="java.util.Map"  parameterType="java.util.Map">
        select DZShare.T_Y_SBBHDEVICE_SITE.* ,
        ROUND(DZShare.T_Y_SCORE.actual_score ,2) as actual_score ,
        ROUND(DZShare.T_Y_SCORE.total_score ,2) as  total_score,
        DZShare.T_Y_SCORE.time ,
        DZShare.T_Y_SCORE.id as scoreId ,
        DZShare.T_Y_SCORE.status ,
        DZShare.T_Y_TYPE_ENGINEERING_D.engineering_name ,
        (select DZShare.T_Y_SCORE.total_score - sum( DZShare.T_Y_SCORE_DETAILS.score) from
        DZShare.T_Y_SCORE_DETAILS where  DZShare.T_Y_SCORE_DETAILS.score_id = DZShare.T_Y_SCORE.id)
        as originalScore
        from DZShare.T_Y_SBBHDEVICE_SITE , DZShare.T_Y_SCORE , DZShare.T_Y_TYPE_ENGINEERING_D
        where 1=1
        and DZShare.T_Y_SBBHDEVICE_SITE.id = DZShare.T_Y_SCORE.sbbhdevice_id
        and DZShare.T_Y_TYPE_ENGINEERING_D.id = DZShare.T_Y_SBBHDEVICE_SITE.engineering_id
        <if test="country != null and country != '' ">
            and  DZShare.T_Y_SBBHDEVICE_SITE.country in (
            <foreach collection="country" index="index" item="item"  separator="," >
                #{item}
            </foreach>
            )
        </if>
        <if test="workSiteName != null and workSiteName != '' ">
            and DZShare.T_Y_SBBHDEVICE_SITE.work_site_name like '%${workSiteName}%'
        </if>
        <if test="time != null and time != '' ">
            and DZShare.T_Y_SCORE.time = '${time}'
        </if>
        <if test="engineering_code != null and engineering_code != '' ">
            and DZShare.T_Y_SBBHDEVICE_SITE.engineering_id in (
            select id from DZShare.T_Y_TYPE_ENGINEERING_D where
            DZShare.T_Y_TYPE_ENGINEERING_D.engineering_code in (
            <foreach collection="engineering_code" index="index" item="item" separator=",">
                #{item}
            </foreach>
            )
            )
        </if>
        <if test="status != null">
            and DZShare.T_Y_SCORE.status = #{status}
        </if>
        order by DZShare.T_Y_SCORE.actual_score desc nulls last
    </select>

在统计计分时, 排序后,null值会默认排在最前面。
这是需要:
**

order by table.caloum desc nulls last 或者 nulls first

**

SQL查询排序如何将null值排到最后 本文介绍在SQL查询排序时,如果遇到NULL值,如何根据实际业务需求,控制将NULL值排在最后或最前边。 阅读详情

相关推荐

SQL进阶技巧:Order by 中 NULLS LAST特性使用?

本文通过案例分析了SQL中Order by语句后NULLS LAST特性的使用方法及技巧,NULL值在排序时往往给问题带来了不便及困扰,但可以通过NULLS FIRST 及NULLS LAST来控制,给问题的解决带来了方便。同时此题需要注意case when等条件语句then 中 使用分析函数时,先执行的是分析函数,最后执行case when语句,与我们通常理解的顺序不一样。

石榴姐yyds 1541

nulls first和nulls last

Nulls first和nulls last是Oracle Order by支持的语法 如果Order by 中指定了表达式Nulls first则表示null值的记录将排在最前(不管是asc 还是 desc) 如果Order by 中指定了表达式Nulls last则表示null值的记录将排在最后 (不管是asc 还是 desc) 使用语法如下: –将nulls始终放在最前 selec...

Ethan Mr.的博客 6747

SQL避坑指南之NULL值知多少?

0 引言 SQL NULL(UNKNOW)是用来代表缺失值的术语,在表中的NULL值是显示为空白字段的值,用作不知道数据的具体值,或者不知道数据是否存在,或者数据不存在等情况。NULL值在SQL中普遍存在,想必大多数程序员对其有所了解,但是对于NULL值在SQL中贯穿体现及相关细节,是否会有人注意到呢?本文将对SQL中NULL值的一些使用细节进行研究,让你在使用过程中避开NULL值的坑,...

石榴姐yyds 4132

关于sql中的字段为null时的排序问题

1.在Oracle中进行查询排序时 如果排序字段里面有空值的情况下,排序结果可能会达不到自己想要的结果。 如 select * from tableTest order by VISITS desc 将原来的sql语句改写为:select * from tableTest order by VISITS desc nulls last,"nulls last"控制将空值记录放在后面,当然,你...

LiuM150428的博客 4557

SPAD 单光子雪崩二极管

SPAD,全称为,是一种高灵敏度的光电探测器件,能够在非常低的光照水平下检测单个光子。SPAD在工作时,当一个光子被探测器吸收后,能够触发一个雪崩效应,产生一个可以被检测到的电信号。

qq_42786033的博客 1万+

tcl脚本语言之file的常见用法

这些命令覆盖了从文件属性获取、修改、复制、删除、路径处理等广泛的文件操作需求。命令用于处理文件系统操作。

hzmscut的博客 5149

SQL - nulls值排序问题

psql -h localhost -U postgres CREATE DATABASE cbx6_qa_0831 WITH OWNER postgres ENCODING=’UTF8’; \q pg_restore -h localhost -U postgres -W -O -d cbx6_qa_0831 D:\db\cbx_qa_2-20180515.DUMP

不积跬步,无以至千里 3518

解决turmex安装kali报错问题

在手机上安装好turmex后,都喜欢安装一个Linux系统,我当时安装的时kali,但是安装过程中,报错不断。 2019.8.24更新 1,出现问题首先看下载kali源文件是否完整 安装步骤中,会显示[解压中.....] ,可以看到解压的大小。 如图所示,完整源文件不小于81M。 如果源文件过小,则说明下载错误,而且在remove kali这个命令下,是不会删除源文件的,下一次安装只...

WeiLuckyStrike的博客 1万+

MS SQL Server 实战 统计与汇总重复记录

比如我们有一组题库数据,主要包括题目和选项字段(如单选题目、多选题目和判断题目),一个合理的数据存储应该至少保证这些题目在分类中不应该出现重复题目标题数据,本文将介绍如何利用group by 、with rollup、having 语句来实现这一统计汇总需求。

初九之潜龙勿用 7526

【CubeMX】STM32G474 HRTIM 死区时间与互补PWM实战解析

本文深入解析STM32G474的HRTIM高分辨率定时器在互补PWM生成与死区时间配置中的应用。通过CubeMX工具详细演示时钟配置、单路PWM基础、互补输出与死区时间设置,并结合逆变器等电力电子实战案例,帮助开发者避免直通风险,优化系统性能。

efc12345678的博客 745

Python与CAD系列基础篇(十)图形复制、移动、删除

①通过pyautocad连接AutoCAD进行处理②通过ezdxf处理dxf格式文件。进行图形复制、移动、删除的方法。pyautocad方式。pyautocad方式。

weixin_43894929的博客 2209

SQL汇总统计: 在SQL中使用CUBE和ROLLUP实现数据多维汇总

前面 偶然在网上看到一篇文章,讲到数据汇总,提到了CUBE,感觉有些晦涩,想试着自己表述一下。同时,个人也认为CUBE还是很有用的,对SQL或数据分析感兴趣的小伙伴不妨了解一下,或许有用呢! 首先,我们设定个需求,想要分别按【性别】、【籍贯】、【年龄】或【成绩级别】统计下表中学生的数量,再进一步,需要将这些条件相结合统计,同时满足某两项或更多条件的学生数量。数据表格如下: 我们可以逐层来理解**【GROUP BY】【WITH ROLLUP】【WITH CUBE】**如何完成数据汇总。 第一层:【GROUP

极客神殿 7942

【Charge】仿真目录

Author: JiJi\textrm{Author: JiJi}Author: JiJi Created Time: 2026.01.20\textrm{Created Time: 2026.01.20}Created Time: 2026.01.20 Modified Time: 2026.01.20\textrm{Modified Time: 2026.01.20}Modified Time: 2026.01.20工作流程材料模型[Charge] 电荷分布与折射率变化理论 [Charge] FDTD

u011699626的博客 312

汇总统计数据--SQL中聚集函数的使用

一般用来找出最大的数值或日期值,但许多(并非所有)DBMS 允许将它用来返回任意列中的最大值,包括返回文本列中的最大值。包含订单中实际的物品,每个物品有相应的数量。组合聚集函数,就是SELECT语句可包含多个聚集函数,这里注意取的列名不要和原表重复。函数会忽略指定列的值为空的行,但如果COUNT()函数中用的是星号(用来返回指定列值的和(总计)。利用标准的算术操作符,所有聚集函数都可用来执行多个列上的计算。对表中行的数目进行计数,不管表列中包含的是空值(NULL。确定表中行的数目或符合特定条件的行的数目。

i_cant_qiao_chu的博客 1157

Matlab仿真:均匀面阵方向图、均匀线阵方向图、均匀圆阵方向图

其中,阵列方向图是评价阵列性能的重要参数之一。均匀面阵由若干个相同的阵元构成,阵元间等距排列,阵元的方向图形状为一个圆盘。均匀线阵由若干个相同的阵元构成,阵元间等距排列,阵元的方向图形状为一个矩形。本文将采用Matlab进行仿真,分别实现均匀面阵方向图、均匀线阵方向图和均匀圆阵方向图,并对三种阵列进行比较分析。通过以上代码仿真,我们可以对均匀面阵、均匀线阵和均匀圆阵进行方向图的绘制,进一步分析不同阵列在天线性能方面的差异。Matlab仿真:均匀面阵方向图、均匀线阵方向图、均匀圆阵方向图。

2301_79326857的博客 3436

1.2 amdgpu_bo的设计分析 — gem层和ttm层

本文分析了AMD KFD的BO设计架构,重点介绍了DRM子系统中缓冲对象的多层继承关系。文章首先展示了核心继承层次图,包括DRM通用层(drm_gem_object)、TTM内存管理层(ttm_buffer_object)、AMD驱动层(amdgpu_bo)和KFD计算层(kgd_mem)。随后详细解析了drm_gem_object结构体的关键功能,包括用户空间接口管理、内存映射支持、引用计数机制以及DMA-BUF导入/导出功能。

图形/计算GPU的驱动与虚拟化技术分享园地 2537

SQL 汇总统计及GROUP BY

介绍几个常用的聚集函数及使用方法,使用聚集函数实现分组统计 介绍如何对分组统计的结果进行过滤?, 介绍如何对分组统计的结果进行排序?, 介绍SELECT语句中各个子句的书写顺序

黑码哥的技术博客 2万+

ssm框架搭建

这个是一个在idea上成功跑起来的ssm框架项目,保存在这里方便以后使用直接下载

SQL Server 2008中增强的汇总技巧

SQL Server 2008中SQL应用系列--目录索引SQL Server 2008中对汇总有明显的增强,有点像Oracle的语法了。请看下面五个例子:假定场景如下:某几位员工在不同时间参加了不同的项目,获取了相应的收入,现在需要按各种分类进行统计。基本表如下:USE testDb2 GO IF NOT OBJECT_ID('tb_Income') IS NULL DROP TABLE [t

邀月周记 9823

蓝牙模块HM-10手册

蓝牙模块HM-10手册,该手册对蓝牙模块HM-10进行了详细的介绍和使用方法以及一些AT指令。

文档:亲测可用解决vnc灰屏,黑屏,鼠标大黑叉情况

主要解决vnc-viewer灰屏,黑屏,鼠标大黑叉等现象,详细见文档。

group子句返回结果中会有一行对null值的统计_SQL汇总统计: 在SQL中使用CUBE和ROLLUP实现数据多维汇总...

前面偶然在网上看到一篇文章,讲到数据汇总,提到了CUBE,感觉有些晦涩,想试着自己表述一下。同时,个人也认为CUBE还是很有用的,对SQL或数据分析感兴趣的小伙伴不妨了解一下,或许有用呢!首先,我们设定个需求,想要分别按【性别】、【籍贯】、【年龄】或【成绩级别】统计下表中学生的数量,再进一步,需要将这些条件相结合统计,同时满足某两项或更多条件的学生数量。数据表格如下:我们可以逐层来理解【GROUP...

weixin_39665992的博客 163

计算机控制技术及应用

《计算机控制技术及应用》通过总结作者的科研成果和吸收国内外的先进理论、方法和技术,以计算机控制系统的网络化、开放化、智能化和集成化发展趋势为主线索,主要介绍计算机控制系统的基本概念和计算机控制系统的典型形式,计算机控制系统的数学描述与基本分析方法,以及数字PID控制器、最少拍控制系统、达林算法、状态变量设计法等设计方法及其各种改进算法。重点突出计算机控制系统输入输出通道接口的设计方法和典型控制系统的设计案例与实现方法等。

上一篇: 2022的新年感想
下一篇: 关于 数据对接入库失败后的 补录机制的一些想法
libingbojava
博客等级 码龄9年 64粉丝 111原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值