SQL Server UPDATE语句用于更新数据

时间:2021-08-05 13:28:53

SQL Server UPDATE语句用于更新数据,下面就为您详细介绍SQL Server UPDATE语句语法方面的知识,希望可以让您对SQL Server UPDATE语句有更多的了解。

现实应用中数据库中的数据改动是免不了的。通常,几乎所有的用户数据库中的大部分数据都要进行某种程度的修改。在SQL Server数据库中要想修改数据库记录,就需要用UPDATE语句,UPDATE语句就是为了改变数据库中的现存数据而存在的。这条语句虽然有一些复杂的选项,但确实是最容易学习的语句之一。这是因为在大多数情况下,这条语句的高级部分很少使用。在用户看来,UPDATE语句只是用来改变指定行中的数据。但实际的内部情况是,SQL Server从表中删除旧的数据行并插入新行。

SQL Server UPDATE语句的语法如下:

 
 
  1. update <table_name> set <column_name> = <value> where <search_condition> 

下面是语法选项简介:

<table_name>表的名称。该表包含了要修改值的列
<column_name>要修改数据的列的名称
<value>要输入到列中的新值
<search_condition>这是UPDATE语句中最重要的部分。通过指定一个好的搜索条件,你能够限定表内被修改的行数。如果你不指定搜索条件,SQLServer会用新值修改表内的所有行

示例:

现在我们来看看如何实际修改表中的某些行。我们在表中有一列使用了唯一值,可以区分表中的每一行。因此,我们可以轻松地写下UPDATE语句,只改变对应某作者的那行数据。如下:

 
 
  1. update users set phone=78789831 where number =231

比如现在我们要把超市表内的每件商品价格都提高11%,是否有必要为每一行都写一条独立的UPDATE语句呢?就现在的情况而言,也许不会有很多的UPDATE语句要写,但如果是更大的表,这就成问题了。所以回答是否定的。你所要做的只是写一条不指定要更新的行的UPDATE语句,如下所示:

 
 
  1. update shop set priceprice = price * .11 ; 


对一个表数据进行更新操作可以把from [表名]省略.

用from 时一般是从别的关联表中取数据更新时用


update [表1] set [列名]=b.[列名]
FROM [表1] a,[表2] b
where a.[关联列]=b.[关联列]