SQL 中的 NULL 值:定义、测试和处理空数据,以及 SQL UPDATE 语句的使用

这篇具有很好参考价值的文章主要介绍了SQL 中的 NULL 值:定义、测试和处理空数据,以及 SQL UPDATE 语句的使用。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

SQL NULL 值

什么是 NULL 值?

NULL 值是指字段没有值的情况。如果表中的字段是可选的,那么可以插入新记录或更新记录而不向该字段添加值。此时,该字段将保存为 NULL 值。需要注意的是,NULL 值与零值或包含空格的字段不同。具有 NULL 值的字段是在记录创建期间留空的字段。

如何测试 NULL 值?

使用比较运算符(如=、<或<>)无法测试 NULL 值。相反,我们必须使用 IS NULLIS NOT NULL 运算符。

IS NULL 语法

SELECT 列名
FROM 表名
WHERE 列名 IS NULL;

IS NOT NULL 语法

SELECT 列名
FROM 表名
WHERE 列名 IS NOT NULL;

演示数据库

以下是示例中使用的 Customers 表的一部分:

CustomerID CustomerName ContactName Address City PostalCode Country
1 Alfreds Futterkiste Maria Anders Obere Str. 57 Berlin 12209 Germany
2 Ana Trujillo Emparedados y helados Ana Trujillo Avda. de la Constitución 2222 México D.F. 05021 Mexico
3 Antonio Moreno Taquería Antonio Moreno Mataderos 2312 México D.F. 05023 Mexico
4 Around the Horn Thomas Hardy 120 Hanover Sq. London WA1 1DP UK
5 Berglunds snabbköp Christina Berglund Berguvsvägen 8 Luleå S-958 22 Sweden

IS NULL 运算符

IS NULL 运算符用于测试空值(NULL 值)。以下 SQL 列出了所有具有 "Address" 字段中 NULL 值的客户:

SELECT CustomerName, ContactName, Address
FROM Customers
WHERE Address IS NULL;

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

IS NOT NULL 运算符

IS NOT NULL 运算符用于测试非空值(非 NULL 值)。以下 SQL 列出了所有具有 "Address" 字段中有值的客户:

SELECT CustomerName, ContactName, Address
FROM Customers
WHERE Address IS NOT NULL;

这是关于 SQL NULL 值的基本介绍和示例。使用 IS NULLIS NOT NULL 运算符可以有效地处理数据库中的空值情况。

SQL UPDATE 语句

UPDATE 语句用于修改表中的现有记录。

UPDATE 语法

UPDATE 表名
SET 列1 = 值1, 列2 = 值2, ...
WHERE 条件;

注意:在更新表中的记录时要小心!请注意UPDATE语句中的WHERE子句。WHERE子句指定应更新哪些记录。如果省略WHERE子句,将会更新表中的所有记录!

演示数据库

以下是示例中使用的 Customers 表的一部分:

CustomerID CustomerName ContactName Address City PostalCode Country
1 Alfreds Futterkiste Maria Anders Obere Str. 57 Berlin 12209 Germany
2 Ana Trujillo Emparedados y helados Ana Trujillo Avda. de la Constitución 2222 México D.F. 05021 Mexico
3 Antonio Moreno Taquería Antonio Moreno Mataderos 2312 México D.F. 05023 Mexico
4 Around the Horn Thomas Hardy 120 Hanover Sq. London WA1 1DP UK
5 Berglunds snabbköp Christina Berglund Berguvsvägen 8 Luleå S-958 22 Sweden

更新表

以下 SQL 语句将更新第一个客户(CustomerID = 1)的新联系人和新城市:

UPDATE Customers
SET ContactName = 'Alfred Schmidt', City = 'Frankfurt'
WHERE CustomerID = 1;

此时,"Customers"表的选择将如下所示:

CustomerID CustomerName ContactName Address City PostalCode Country
1 Alfreds Futterkiste Alfred Schmidt Obere Str. 57 Frankfurt 12209 Germany
2 Ana Trujillo Emparedados y helados Ana Trujillo Avda. de la Constitución 2222 México D.F. 05021 Mexico
3 Antonio Moreno Taquería Antonio Moreno Mataderos 2312 México D.F. 05023 Mexico
4 Around the Horn Thomas Hardy 120 Hanover Sq. London WA1 1DP UK
5 Berglunds snabbköp Christina Berglund Berguvsvägen 8 Luleå S-958 22 Sweden

更新多条记录

决定更新多少记录取决于 WHERE 子句。

以下 SQL 语句将更新所有国家为 "Mexico" 的记录的 ContactName 为 "Juan":

UPDATE Customers
SET ContactName='Juan'
WHERE Country='Mexico';

此时,"Customers"表的选择将如下所示:

CustomerID CustomerName ContactName Address City PostalCode Country
1 Alfreds Futterkiste Alfred Schmidt Obere Str. 57 Frankfurt 12209 Germany
2 Ana Trujillo Emparedados y helados Juan Avda. de la Constitución 2222 México D.F. 05021 Mexico
3 Antonio Moreno Taquería Juan Mataderos 2312 México D.F. 05023 Mexico
4 Around the Horn Thomas Hardy 120 Hanover Sq. London WA1 1DP UK
5 Berglunds snabbköp Christina Berglund Berguvsvägen 8 Luleå S-958 22 Sweden

更新警告!

在更新记录时要小心。如果省略 WHERE 子句,将更新所有记录!

示例

UPDATE Customers
SET ContactName='Juan';

此时,"Customers"表的选择将如下所示:

CustomerID CustomerName ContactName Address City PostalCode Country
1 Alfreds Futterkiste Juan Obere Str. 57 Frankfurt 12209 Germany
2 Ana Trujillo Emparedados y helados Juan Avda. de la Constitución 2222 México D.F. 05021 Mexico
3 Antonio Moreno Taquería Juan Mataderos 2312 México D.F. 05023 Mexico
4 Around the Horn Juan 120 Hanover Sq. London WA1 1DP UK
5 Berglunds snabbköp Juan Berguvsvägen 8 Luleå S-958 22 Sweden

这是关于SQL UPDATE语句的基本介绍和示例。UPDATE语句用于修改数据库表中的记录,可以根据需要更新单个或多个记录,但务必小心使用WHERE子句,以防止意外更新。

最后

为了方便其他设备和平台的小伙伴观看往期文章:公众号搜索Let us Coding,或者扫描下方二维码,关注公众号,即可获取最新文章。

看完如果觉得有帮助,欢迎点赞、收藏关注

SQL 中的 NULL 值:定义、测试和处理空数据,以及 SQL UPDATE 语句的使用文章来源地址https://www.toymoban.com/news/detail-746582.html

到了这里,关于SQL 中的 NULL 值:定义、测试和处理空数据,以及 SQL UPDATE 语句的使用的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • Oracle/MySQL/PG/SQL Server关系数据库中NULL与空字符串的区别

    在Oracle数据库中,\\\'\\\'(空字符串)与null是什么关系呢? \\\'\\\'(空字符串)是否会等同(或者说等价于)于null值呢?\\\'\\\'跟\\\' \\\'(长度为零的空字符串或包含一个或多个空格的空字符串)是否又等价?下面我们测试一下 如上所示,插入\\\'\\\'时,Oracle数据库确实将其等同与null,但是, 像\\\'

    2024年02月16日
    浏览(1)
  • 使用Winform开发自定义用户控件,以及实现相关自定义事件的处理

    在我们一些非标的用户界面中,我们往往需要自定义用户控件界面,从而实现不同的内容展示和处理规则,本篇内容介绍使用Winform开发自定义用户控件,以及实现相关自定义事件的处理。 对于比较规范的界面,需要进行一定的分析,以便从中找到对应的规则,逐步细化为自

    2024年02月03日
    浏览(1)
  • sql知识点复习以及项目中的例子

      常见的聚合函数: avg(),求平均值; sum() 求和; count(),计算和; min()求最小值; max()求最大值 聚合函数的应用场景: COUNT:用于统计指定列的行数,可以用于统计表中的记录数或者去重后的记录 数。 SUM:用于计算指定列的总和,可以用于计算某个时间段

    2023年04月19日
    浏览(1)
  • SQL入门之第八讲——UPDATE更新语句

    定义:UPDATE更新语句是用来修改表中一条数据或者多条数据记录 基本语法: 1. 更新单行数据 实例1:在学生表中,将学生编号Sid为6的学生姓名Sname修改为:杨红梅 执行结果: SET后面除了带文本之外,还可以是数学表达式 实例2:在学生表中,将学生编号Sid为10的学生姓名对应

    2023年04月12日
    浏览(1)
  • SQL注入_insert&delete&update&selete

    2023年04月16日
    浏览(34)
  • 数据库:实验一 SQL数据定义

    1.用数据定义语言创建教学管理数据库stu_db,在数据库中创建schema T,在架构T下创建Student、Course、SC三张数据表(参见教材),并建立相应 索引 。       创建student数据表      创建course数据表       创建sc数据表        2. 在以上三张表中录入若干数据。        录入数

    2024年04月12日
    浏览(1)
  • Qt | QWidget 自定义消息处理函数(捕获调试信息),调试和测试必不可少

    # 01 函数qInstallMessageHandler     qInstallMessageHandler 是 Qt 中用于安装自定义消息处理函数的函数。在 Qt 应用程序中,可以使用 qInstallMessageHandler 来接管 Qt 的消息输出,以便自定义消息的处理和记录。 #02  myMessageOutput(QtMsgType type, const QMessageLogContext context, const QString msg)    

    2024年03月22日
    浏览(1)
  • 深入解析 MyBatis 中的 <;foreach>; 标签:优雅处理批量操作与动态 SQL

    在当今的Java应用程序开发中,数据库操作是一个不可或缺的部分。MyBatis作为一款颇受欢迎的持久层框架,为我们提供了一种优雅而高效的方式来管理数据库操作。在MyBatis的众多特性中, foreach 标签无疑是一个强大的工具,它使得在SQL语句中进行动态循环迭代变得轻而易举。

    2024年02月13日
    浏览(2)
  • 3.Hive SQL数据定义语言(DDL)

    1.1 常见的开发方式 (1) Hive CLI、Beeline CLI Hive自带的命令行客户端 优点:不需要额外安装 缺点:编写SQL环境恶劣,无有效提示,无语法高亮,误操作率高 (2) 文本编辑器 Sublime、Emacs、EditPlus等 有些不支持作为客户端连接Hive服务,但支持SQL语法环境,那就在编辑器中开发

    2024年02月12日
    浏览(1)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包