SQL更新语句及查询实例

SQL数据库提供结构化数据存储功能。我们可以将数据存储在具有列和行的表中。SQL数据库的其他有用特性是更新功能。我们可以用不同的方式和约束更新SQL数据库数据。在本教程中,我们将学习如何使用SQLUPDATE语句更新数据库表数据,并通过示例查询单个记录、多个记录或条件情况。

null

SQL更新语法

SQL Update语句或查询具有以下语法和给定值。

update TABLE_NAMEset COLUMN1=VALUE1, COLUMN2=VALUE2, ... , COLUMNN=VALUENwhere CONDITION;
  • TABLE_NAME 是要更新其记录的表。
  • COLUMN1 是要更新的列名。
  • VALUE1 是我们要设置的值。
  • COLUMN VALUE 可以多次设置,没有问题。
  • CONDITION 用于选择要更新的记录或行。

数据库表数据示例

在本教程中,我们将使用以下数据库表以不同的方式对其进行更新。为了避免误解和减少复杂性,我们尽量使表格简单化。在这个表中,我们有以下列。表名为 Users .

  • 身份证件
  • 姓名
  • 城市
  • 年龄
  • 国家
身份证件 姓名 城市 年龄 国家
1 约阿希姆öw 柏林 20 德国
2 艾哈迈特·阿里·拜丹 安卡拉 35 土耳其
安东尼奥·莫雷诺·塔克尔í一 Mé西科 40 墨西哥
4 詹姆斯邦德 伦敦 25 英国
5 兹拉坦İ布拉希莫维奇 卢利亚 60 瑞典

更新表

我们将从一个简单的更新表示例开始。我们将只更新单个记录的单个值。我们将更新Zlatan的年龄值İ布拉希莫维奇用它的身份证。我们将设定兹拉坦的年龄İ卜拉希莫维奇到38号。

UPDATE UsersSET Age=38WHERE ID=5;

更新多个记录

更新记录可用于在单个更新查询执行中更新多个记录。我们必须指定一些条件来匹配给定表上的多个记录并更新给定列。在本例中,我们将显示年龄超过30岁的用户所在的国家。

UPDATE UsersSET Country='Turkey'WHERE Age>30;

更新多列

我们可以为给定的条件更新多个列。这里我们需要通过用逗号分隔列和值对来指定它们。在这个例子中,我们将更新年龄超过30岁的用户的国家和城市值 Turkey 城市作为 Ankara .

UPDATE UsersSET Country='Turkey', City='Ankara'WHERE Age>30;

更新特定列的所有表行/记录

在某些情况下,我们可能需要为特定列更新整个表或表中的所有行。在这种情况下,我们不需要条件,因为我们将匹配所有表行。在本例中,我们将设置所有用户表记录 Age 对客户的价值 30 .

UPDATE UsersSET Age=30;

根据ID列更新

在应用程序开发过程中,我们通常会编写一些SQL查询。updatesql查询是最常用的查询之一。几乎每个应用程序都有一些表 ID 列。我们通常使用ID值来更新表。在这个例子中,我们将展示如何根据ID进行更新。

UPDATE UsersSET Age=30WHERE ID=1;

或者我们可以更新那些身份证号码高于3的记录。

UPDATE UsersSET Age=30WHERE ID>1;

使用BETWEEN子句更新

SQL更新的另一个有用场景是使用with-BETWEEN子句或条件来匹配要更新的记录。我们可以使用 BETWEEN 如果记录值介于此范围之间,则将更新。在本例中,我们将把国家更新为年龄在30到40岁之间的土耳其。

UPDATE UsersSET Country='Turkey'WHERE Age BETWEEN 30 AND 40;

使用SQL Select从其他表更新表

到目前为止,我们已经通过在SQL查询中显式地、直接地提供数据来更新数据。在复杂的数据库和应用程序中,可以从其他表中提供数据。我们可以通过使用updatesql语句从其他表获取数据来更新数据。我们将使用一个名为Cities的外部表,其中我们将根据Cities表更新Users表记录的Country值。

UPDATE UsersSET Country=(SELECT Country FROM Cities WHERE Cities.City = Users.City)WHERE (SELECT Country FROM Cities WHERE Cities.City=Users.City);

使用SQL内部联接更新

在前面的示例中,我们已经从另一个名为Cities的表中更新了Users表。我们可以通过使用内部joinsql语句来实现这一点。该场景与前面的示例相同。我们将使用一个名为Cities的外部表,其中我们将根据Cities表更新Users表记录的Country值。

UPDATE UsersSET Users.Country = Cities.CountryFROM UsersINNER JOIN CitiesON Users.City =Cities.City;

相关文章: 最有用的SQL命令列表及其示例

© 版权声明
THE END
喜欢就支持一下吧
点赞0 分享