MySQL 将null转0 ifnull() coalesce()

做统计报表的时候,有时候不希望查出来的值是null,因为在代码中需要做大量的判空,最后转换成0来处理。既然如此,那在sql中查出来就是0,就不用为空而去判空了。

1.IFNULL()

 ifnull()只能放2个值。

select IFNULL(null,0);

使用举例:

如果工资为null,就设为0 

select IFNULL(salary,0) from emp

求和,如果最后值为null,设为0 

select IFNULL(sum(salary),0) from emp

2.COALESCE()

 coalesce()可以放入多个值。

select coalesce(null,null,0); --结果为 0
select coalesce(null,null,null,0); --结果为 0
select coalesce(null,null,null,1,2); --结果为 1

如果第1个值为null,就看第2个值,如果第2个值不为null,就使用第2个。以此类推。

使用举例:查出工资比 JOHN 低的员工。如果有人的工资为null,就默认为0。

select ename,salary from emp where coalesce(salary,0) < (select salary from emp whrer ename ="JOHN");

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/web/24288.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

[240608] Zig 发布 v0.13.0 |AMD 新处理器不支持 Win 10 |DuckDuckgo 发布AI匿名聊天服务

目录 Zig 发布 0.13.0 版本AMD 下一代锐龙处理器不支持 Windows 10DuckDuckgo 发布 AI 匿名聊天服务 Zig 发布 0.13.0 版本 Zig 发布 0.13.0 版本&#xff0c;此次发布的主要目的是升级 zig 工具链&#xff0c;发布重点如下&#xff1a; 工具链升级&#xff1a; LLVM&#xf…

DevOps的原理及应用详解(六)

本系列文章简介&#xff1a; 在当今快速变化的商业环境中&#xff0c;企业对于软件交付的速度、质量和安全性要求日益提高。传统的软件开发和运维模式已经难以满足这些需求&#xff0c;因此&#xff0c;DevOps&#xff08;Development和Operations的组合&#xff09;应运而生&a…

企业建站响应式网站建设平台版源码系统 海量模版可选择 带完整的安装代码以及搭建教程

系统概述 企业建站响应式网站建设平台版源码系统是一款集创新性、实用性和便捷性于一体的建站解决方案。它旨在为用户提供一站式的网站建设服务&#xff0c;无论你是新手还是经验丰富的开发者&#xff0c;都能通过该系统轻松实现网站的构建与部署。 该系统采用先进的技术架构…

单链表复习 (C语言版)

目录 一.顺序表与链表的区别 二.链表概念 三.单链表 1.单链表的开始与初始化 2.单链表的打印 3.单链表的尾插 重难点&#xff1a;单链表实现时的指针详解 4.单链表的头插 5.单链表的尾删 6.单链表的头删 小结&#xff1a; 7.单链表的查找 8.在指定位置前插入数据 …

mingw64,clang,gcc

MinGW-w64、Clang 和 GCC 都是编译器&#xff0c;但它们在功能和设计上有一些区别&#xff1a; MinGW-w64 是一个在 Windows 平台上的开发工具集&#xff0c;它提供了一组 GNU 工具和库&#xff0c;可以用于编译和构建本地的 Windows 应用程序。MinGW-w64 的主要目标是提供类似…

GitHub工程获取第三方PR操作

GitHub工程获取第三方PR操作 1. 源由2. 获取第三方PRStep 1&#xff1a;安装ghStep 2&#xff1a;获取个人TokenStep 3&#xff1a;通过git协议获取代码Step 4&#xff1a;获取第三方PR分支 3. 总结 1. 源由 通常来说&#xff0c;GitHub上通常有三种场景&#xff1a; 工程管理…

STM32 UART 错误代码 HAL_UART_ERROR_PE

HAL_UART_ERROR_PE 是STM32 HAL库&#xff08;硬件抽象层库&#xff09;中UART&#xff08;通用异步收发传输器&#xff09;模块定义的一个错误码&#xff0c;表示“Parity Error”&#xff08;奇偶校验错误&#xff09;。当UART通信过程中检测到奇偶校验不匹配时&#xff0c;会…

自动化喷涂生产线方案三

本文介绍自动化喷涂生产线的另外一种方案&#xff0c;单工作站方案&#xff0c;单工作站配置一台机械臂和一套除尘柜&#xff0c;代替一个工位完成喷涂工艺&#xff0c;其工作原理简要介绍如下。 一套单工作站的主要组成设备有&#xff0c;10kg负载机械臂一台主要负责喷涂工艺&…

源码讲解kafka 如何使用零拷贝技术(zero-copy)

前言 kafka 作为一个高吞吐量的分布式消息系统,广泛应用与实时应用场景中。为了实现高效的数据传输,kafka使用了零拷贝技术(zero-copy)显著提高了性能。本文将详细讲解 Kafka 如何利用零拷贝技术优化数据传输。 什么是零拷贝 零拷贝技术目的是减少数据传输的效率。在传统…

冯喜运:6.8下周伦敦金行情怎么看?黄金原油下周操作建议

【黄金消息面分析】&#xff1a;黄金不是由通胀驱动的。它也不是由通货紧缩驱动的。它也不是由美元驱动的。当股市反弹时&#xff0c;它也不会下跌&#xff0c;反之亦然。黄金是由市场情绪驱动的。而且&#xff0c;它是黄金市场上唯一的常数&#xff0c;使人们能够对黄金价格趋…

vue elementui el-input 正则验证,限制只能输入数字和小数

vue elementui el-input 正则验证 限制只能输入数字和小数&#xff0c;以下两种方法都可以&#xff1a; 1、οninput“value value.replace(/[^0-9.]/g,‘’)” 2、οninput“value value.replace(/[^\d.]/g, ‘’)” 限制只能输入数字&#xff1a; 1、oninput “valuevalu…

c++使用_beginthreadex创建线程

记录使用_beginthreadex()&#xff0c;来创建线程。方便后期的使用。 创建一个线程 相关函数介绍 unsigned long _beginthreadex( void *security, // 安全属性&#xff0c; 为NULL时表示默认安全性 unsigned stack_size, // 线程的堆栈大小&#xff0c; 一般默认为0 u…

3D打印随形透气钢:技术革新引领模具制造新潮流

在模具制造领域&#xff0c;透气钢一直扮演着重要角色&#xff0c;它能够有效解决模具困气问题&#xff0c;提高注塑成型的效率和质量。然而&#xff0c;传统的透气钢制造方法受限于工艺和材料&#xff0c;难以满足复杂模具的需求。随着3D打印技术的飞速发展&#xff0c;3D打印…

Go微服务: 分布式之通过本地消息实现最终一致性

概述 我们的业务场景是可以允许我们一段时间有不一致的消息的状态的&#xff0c;并没有说必须特别高的这个消息的一致性比如说在TCC这个架构中&#xff0c;如果采用了消息的最终一致性&#xff0c;整体架构设计要轻松好多即便我们库存服务挂了&#xff0c;或者我们积分服务挂了…

【2024PythonPycharm详细安装教程】

1.打开官网 https://www.python.org/ downloads——>Windows 2.找到 Download Windows installer (64-bit) 下载 3.下载完成双击安装包 勾选Add python.exe to PATH(自动配置系统变量) 点击Install Now&#xff08;默认安装&#xff09; 然后看到安装成功&#xff0…

LeetCode-day05-3038. 相同分数的最大操作数目 I

LeetCode-day05-3038. 相同分数的最大操作数目 I 题目描述示例示例1&#xff1a;示例2&#xff1a; 思路代码 题目描述 给你一个整数数组 nums &#xff0c;如果 nums 至少 包含 2 个元素&#xff0c;你可以执行以下操作&#xff1a; 选择 nums 中的前两个元素并将它们删除。…

深度学习中2D检测

深度学习中的2D目标检测 2D目标检测是深度学习中的一个关键任务&#xff0c;旨在识别图像中的目标对象&#xff0c;并在每个目标对象周围生成一个边界框。该任务在自动驾驶、视频监控、机器人视觉等领域具有广泛应用。以下是对深度学习中2D目标检测的详细介绍&#xff0c;包括…

通过windbg查看dump文件中静态变量的值

可以使用 WinDbg 和 SOS 扩展来查看它们。下面是如何使用 WinDbg 和 SOS 的步骤&#xff1a; 打开 WinDbg&#xff0c;并用它打开你的 dump 文件。你可以使用 File → Open Crash Dump 来实现。 在命令行中&#xff0c;加载 SOS 扩展。一般来说这可以通过 .loadby sos clr 来完…

Oracle EBS AP发票创建会计科目错误:子分类帐日记帐分录未按输入币种进行平衡

系统版本 RDBMS : 12.1.0.2.0 Oracle Applications : 12.2.6 问题症状: 提交“创建会计科目”请求提示错误信息如下: 中文报错: 该子分类帐日记帐分录未按输入币种进行平衡。请检查日记帐分录行中输入的金额。 英文报错:The subledger journal entry does not balance i…

excel vlookup

Excel中的VLOOKUP函数用于在数据表中查找特定值&#xff0c;并返回该值所在行的另一个单元格中的值。这个函数非常有用&#xff0c;特别是在需要从一张表中查找信息并将其填充到另一张表中的情况下。VLOOKUP函数的基本语法是&#xff1a;VLOOKUP(查找值, 数据范围, 返回值的…