23.NULL 函数

SQL ISNULL()、NVL()、IFNULL() 和 COALESCE() 函数

请看下面的 "Products" 表:

P_Id ProductName UnitPrice UnitsInStock UnitsOnOrder
1 computer 699 25 15
2 printer 365 36  
3 telephone 280 159 57

假如 "UnitsOnOrder" 是可选的,而且可以包含 NULL 值。

我们使用如下 SELECT 语句:

SELECT ProductName,UnitPrice*(UnitsInStock+UnitsOnOrder)
FROM Products

在上面的例子中,如果有 "UnitsOnOrder" 值是 NULL,那么结果是 NULL。

微软的 ISNULL() 函数用于规定如何处理 NULL 值。

NVL(), IFNULL() 和 COALESCE() 函数也可以达到相同的结果。

在这里,我们希望 NULL 值为 0。

下面,如果 "UnitsOnOrder" 是 NULL,则不利于计算,因此如果值是 NULL 则 ISNULL() 返回 0。

MySQL

MySQL 也拥有类似 ISNULL() 的函数。不过它的工作方式与微软的 ISNULL() 函数有点不同。

在 MySQL 中,我们可以使用 IFNULL() 函数,就像这样:

SELECT ProductName,UnitPrice*(UnitsInStock+IFNULL(UnitsOnOrder,0))
FROM Products

或者我们可以使用 COALESCE() 函数,就像这样:

SELECT ProductName,UnitPrice*(UnitsInStock+COALESCE(UnitsOnOrder,0))
FROM Products
时间: 2024-10-14 08:28:06

23.NULL 函数的相关文章

SQL-W3School-高级:SQL NULL 函数

ylbtech-SQL-W3School-高级:SQL NULL 函数 1.返回顶部 1. SQL ISNULL().NVL().IFNULL() 和 COALESCE() 函数 请看下面的 "Products" 表: P_Id ProductName UnitPrice UnitsInStock UnitsOnOrder 1 computer 699 25 15 2 printer 365 36   3 telephone 280 159 57 假如 "UnitsOnOrd

SQL NULL 函数

SQL ISNULL().NVL().IFNULL() 和 COALESCE() 函数 请看下面的 "Products" 表: P_Id ProductName UnitPrice UnitsInStock UnitsOnOrder 1 computer 699 25 15 2 printer 365 36   3 telephone 280 159 57 假如 "UnitsOnOrder" 是可选的,而且可以包含 NULL 值. 我们使用如下 SELECT 语句:

SQL is null函数

Sql ISNULL() 函数 使用指定的替换值替换 NULL. 语法 ISNULL ( check_expression , replacement_value ) 参数 check_expression 将被检查是否为 NULL的表达式.check_expression 可以是任何类型的. replacement_value 在 check_expression 为 NULL时将返回的表达式.replacement_value 必须与 check_expresssion 具有相同的类型. 返

MATLAB——null函数

原文:https://baike.so.com/doc/3409199-3588404.html MATLAB函数null用来求解零空间,即满足方程组A*X=0的解空间.实际上是求出解空间的一组解(基础解系). 语法:z=null(A) %z的列向量为方程组的正交规范基,满足z' x z=I. z=null(A,'r') %z的列向量是方程A*X=0的有理基. 原文地址:https://www.cnblogs.com/hahalala/p/8206744.html

oracle 处理‘Null’函数

NVL (expr1, expr2)->expr1为NULL,返回expr2:不为NULL,返回expr1.注意两者的类型要一致 NVL2 (expr1, expr2, expr3) ->expr1不为NULL,返回expr2:为NULL,返回expr3.expr2和expr3类型不同的话,expr3会转换为expr2的类型 NULLIF (expr1, expr2) ->相等返回NULL,不等返回expr1 (两个参数必须均为varchar2类型) 原文地址:https://www.c

SQL复习(w3school)笔记

SQL基础 1.SQL对大小写不敏感 2.DML(数据操作语言)与DDL(数据定义语言) a) DML SELECT UPDATE DELETE INSERT INTO b) DDL CREATE DATABASE ALTER DATABASE CREATE TABLE ALTER TABLE DROP TABLE CREATE INDEX DROP INDEX 3.DISTINCT:去除重复值 a) SELECT DISTINCT 列名 FROM 表名 4.WHERE子句 a) 值得注意的运算

VC++ 线程同步 总结

注:所谓同步,并不是多个线程一起同时执行,而是他们协同步调,按预定的先后次序执行. 与线程相关的基本函数包括:CreateThread:创建线程CloseHandle:关闭线程句柄.注意,这只会使指定的线程句柄无效(减少该句柄的引用计数),启动句柄的检查操作,如果一个对象所关联的最后一个句柄被关闭了,那么这个对象会从系统中被删除.关闭句柄不会终止相关的线程. 线程是如何运行的呢?这又与你的CPU有关系了,如果你是一个单核CPU,那么系统会采用时间片轮询的方式运行每个线程:如果你是多核CPU,那么

Oracle中REGEXP_SUBSTR及其它支持正则表达式的内置函数小结

Oracle中REGEXP_SUBSTR函数的使用说明: 题目如下:在oracle中,使用一条语句实现将'17,20,23'拆分成'17','20','23'的集合. REGEXP_SUBSTR函数格式如下:function REGEXP_SUBSTR(String, pattern, position, occurrence, modifier)__srcstr :需要进行正则处理的字符串__pattern :进行匹配的正则表达式,匹配的值将返回,返回策略由__occurrence决定__po

oracle常用函数汇总

一.运算符算术运算符:+ - * / 可以在select 语句中使用连接运算符:|| select deptno|| dname from dept; 比较运算符:> >= = != < <= like between is null in逻辑运算符:not and or 集合运算符: intersect ,union, union all, minus 要求:对应集合的列数和数据类型相同 查询中不能包含long 列 列的标签是第一个集合的标签 使用order by时,必须使用位置