Loading [MathJax]/jax/output/CommonHTML/config.js
前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >SQL---NULL值处理(1)

SQL---NULL值处理(1)

作者头像
IT云清
发布于 2019-01-16 07:36:13
发布于 2019-01-16 07:36:13
78500
代码可运行
举报
文章被收录于专栏:IT云清IT云清
运行总次数:0
代码可运行

SQL NULL 值

  • SQL Date
  • SQL isnull()

NULL 值是遗漏的未知数据。

默认地,表的列可以存放 NULL 值。

本章讲解 IS NULL 和 IS NOT NULL 操作符。

SQL NULL 值

如果表中的某个列是可选的,那么我们可以在不向该列添加值的情况下插入新记录或更新已有的记录。这意味着该字段将以 NULL 值保存。

NULL 值的处理方式与其他值不同。

NULL 用作未知的或不适用的值的占位符。

注释:无法比较 NULL 和 0;它们是不等价的。

SQL 的 NULL 值处理

请看下面的 "Persons" 表:

Id

LastName

FirstName

Address

City

1

Adams

John

London

2

Bush

George

Fifth Avenue

New York

3

Carter

Thomas

Beijing

假如 "Persons" 表中的 "Address" 列是可选的。这意味着如果在 "Address" 列插入一条不带值的记录,"Address" 列会使用 NULL 值保存。

那么我们如何测试 NULL 值呢?

无法使用比较运算符来测试 NULL 值,比如 =, <, 或者 <>。

我们必须使用 IS NULL 和 IS NOT NULL 操作符。

SQL IS NULL

我们如何仅仅选取在 "Address" 列中带有 NULL 值的记录呢?

我们必须使用 IS NULL 操作符:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
SELECT LastName,FirstName,Address FROM Persons
WHERE Address IS NULL

结果集:

LastName

FirstName

Address

Adams

John

Carter

Thomas

提示:请始终使用 IS NULL 来查找 NULL 值。

SQL IS NOT NULL

我们如何选取在 "Address" 列中不带有 NULL 值的记录呢?

我们必须使用 IS NOT NULL 操作符:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
SELECT LastName,FirstName,Address FROM Persons
WHERE Address IS NOT NULL

结果集:

LastName

FirstName

Address

Bush

George

Fifth Avenue

在下一节中,我们了解 ISNULL()、NVL()、IFNULL() 和 COALESCE() 函数。

来源:http://www.w3school.com.cn/sql/sql_null_values.asp

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2017年10月23日,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
SQLserver基础语句大全[通俗易懂]
结构化查询语言(Structured Query Language)简称 SQL,是一种特殊目的的编程语言, 是一种数据库查询和程序设计语言,用于存取数据以及查询、更新和管理关系数据库系统; 同时也是数据库脚本文件的扩展名。
全栈程序员站长
2022/08/22
3.8K0
SQL AND & OR 运算符
SQL AND & OR 运算符 AND & OR 运算符用于基于一个以上的条件对记录进行过滤。 SQL AND & OR 运算符 如果第一个条件和第二个条件都成立,则 AND 运算符显示一条记录。 如果第一个条件和第二个条件中只要有一个成立,则 OR 运算符显示一条记录。 原始的表 (用在例子中的): LastName FirstName Address City Adams John Oxford Street London Bush George Fifth Avenue New York
子润先生
2021/07/01
2520
快速入门SQL
快速复习一下之前学的SQL。虽然SQL对大小写不敏感,建议关键字使用大写,但是我习惯了小写
皮大大
2021/03/01
6920
快速入门SQL
常用sql语句整理
RDBMS 关系型数据库管理系统(relational database management system)
yifei_
2022/11/14
3170
❤️ 爆肝3天!两万字图文 SQL 零基础入门,不怕你学不会,就怕你不收藏!❤️
SQL语言有40多年的历史,从它被应用至今几乎无处不在。我们消费的每一笔支付记录,收集的每一条用户信息,发出去的每一条消息,都会使用数据库或与其相关的产品来存储,而操纵数据库的语言正是 SQL !
Lucifer三思而后行
2021/09/14
8.7K0
❤️ 爆肝3天!两万字图文 SQL 零基础入门,不怕你学不会,就怕你不收藏!❤️
SQL SELECT 语句
如需获取名为 "LastName" 和 "FirstName" 的列的内容(从名为 "Persons" 的数据库表),请使用类似这样的 SELECT 语句:
子润先生
2021/07/01
9860
sql数据转换
常用语句 --查询是否有空值 select * from iteminfo where 主供应商 = '' or 主供应商 is null --查询字段是否超出长度 select * from iteminfo where len(单位)>20
学派客
2023/04/07
8930
SQL数据分析:从基础入门到进阶,提升SQL能力
SQL语言有40多年的历史,从它被应用至今几乎无处不在。我们消费的每一笔支付记录,收集的每一条用户信息,发出去的每一条消息,都会使用数据库或与其相关的产品来存储,而操纵数据库的语言正是 SQL !
Lucifer三思而后行
2022/01/08
3.5K0
SQL数据分析:从基础入门到进阶,提升SQL能力
专栏:008:MySQLdb及其银行模拟转账
用理工科思维看待这个世界 系列爬虫专栏 崇尚的学习思维是:输入,输出平衡,且平衡点不断攀升。 曾经有大神告诫说:没事别瞎写文章;所以,很认真的写的是能力范围内的,看客要是看不懂,不是你的问题,问题在我,得持续输入,再输出。 今天的主题是:MySQLdb及其银行模拟转账 1:框架 序号 内容 说明 01 概念及其工具介绍 -- 02 SQL语句 -- 03 实例演示数据库操作 -- 04 银行转账操作演示 -- 05 参考及其说明 -- ---- 2:概念,工具介绍 MySQL
谢伟
2018/06/06
1K0
SQL 语法
一个数据库通常包含一个或多个表。每个表由一个名字标识(例如“客户”或者“订单”)。表包含带有数据的记录(行)。
用户7657330
2020/08/14
6290
Android ormLite复杂条件查询
OrmLite要继承一个OrmLiteSqliteOpenHelper,通过OrmLiteSqliteOpenHelper实例的getDao方法可以获取一个Dao类,下边代码中mDao是Dao的实例,用来进行各种数据库操作。Dao类其中有个queryBuilder()方法可以得到builder来构造复杂查询语句。 假设有Person实体,对应数据库t_person表。通过该表来讲下述各种查询方法。 Id LastName FirstName Address City 1 Adams
xiangzhihong
2018/02/06
2.4K0
基础SQL语句学习
最近老发牢骚,写了一些跟技术无关的东西,有点跑题了。以后还是注意多写技术性的东西。
全栈程序员站长
2022/11/08
4430
mysql学习笔记
基本结果有 SELECT 子句,FROM 子句,WHERE 子句组成的查询块 SELECT <字段名> /ntl&FROM <表或视图名> WHERE <查询条件>
宸寰客
2020/07/21
8540
mysql学习笔记
数据库常用sql语句总结「建议收藏」
大家好,我是架构君,一个会写代码吟诗的架构师。今天说一说数据库常用sql语句总结「建议收藏」,希望能够帮助大家进步!!!
Java架构师必看
2022/07/06
23.2K0
数据库常用sql语句总结「建议收藏」
SQL INSERT INTO 语句
SQL INSERT INTO 语句 INSERT INTO 语句用于向表中插入新记录。 SQL INSERT INTO 语法 INSERT INTO 语句可以有两种编写形式。 第一种形式无需指定要插入数据的列名,只需提供被插入的值即可: INSERT INTO table_name VALUES (value1,value2,value3,...); 第二种形式需要指定列名及被插入的值: INSERT INTO table_name (column1,column2,column3,...
子润先生
2021/07/01
1.7K0
常用SQL语句集合
一、数据定义 1、创建新数据库:CREATE DATABASE database_name 2、创建新表:CREATE TABLE table_name (column_name datatype,column_name datatype,...) 3、修改数据表:   添加列:ALTER TABLE table_name ADD column_name datatype   删除列:ALTER TABLE table_name DROP COLUMN column_name   修改列:ALTER
小古哥
2018/03/08
7600
json学习
 1.JSON:JavaScript 对象表示法(JavaScript Object Notation),
wfaceboss
2019/04/08
7360
记一次mysql错误查询
LEFT JOIN 关键字会从左表 (table_name1) 那里返回所有的行,即使在右表 (table_name2) 中没有匹配的行。
DencyCheng
2018/12/27
5370
MySQL ORDER BY,GROUPBY 与各种JOIN
在 SQL 中增加 HAVING 子句原因是,WHERE 关键字无法与合计函数一起使用。
泰坦HW
2020/07/22
2K0
SQL语句知识点
PERSON表 NUMBER NAME SEX AGE 1 THERON male 19 2 JACK male 20 3 LUCY female 20 1.SELECT选择      SELECT 列名称 FROM 表名称      SELECT * FROM 表名称(选择所有的列)      SELECT NUMBER FROM PERSON      SELECT * FROM PERSON 2.DISTINCT列出不同的值,删除重复的      SELECT DISTINCT
用户1624346
2018/04/09
7680
相关推荐
SQLserver基础语句大全[通俗易懂]
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
本文部分代码块支持一键运行,欢迎体验
本文部分代码块支持一键运行,欢迎体验