【SQLServer数据库】更新与删除
小标 2018-07-18 来源 : 阅读 3020 评论 0

摘要:本文主要向大家介绍了【SQLServer数据库】更新与删除,通过具体的内容向大家展现,希望对大家学习SQLServer数据库有所帮助。

本文主要向大家介绍了【SQLServer数据库】更新与删除,通过具体的内容向大家展现,希望对大家学习SQLServer数据库有所帮助。

SQLserver的更新与删除也是我们操作数据库的基本操作之一,对于基本的操作已经能够熟练的使用了,但是SQLserver是如此的强大,一定还有更多的更新和删除操作在之前的学习中我并没有去接触,同时学习也是一个不断重复的过程在每次回顾都会让我有更深的理解。下面就总结一下数据的更新和删除操作。

 

  更新

[sql] view plain copy

1. UPDATE [TOP] table_or_view  

2. SET {colunm_name=expresson|DEFAULT|NULL} [,…n]  

3. [FROM table_source]  

4. [where search_conditions]  

   

      使用UPDATE语句应注意的的事项

             1. where语句指定需要更新的行,SET子句指定新值

             2.UPDATE无法更新标识列

             3. 每次只能修改一个表中的数据,

             4. 可以同时把一列或多列、一个变量或者多个变量放在一个表达式中。(一个update语句中可以有多个Set语句,多个set语句之间用半角的逗号分隔。)

             5. From子句用来从其他表中更新数据。

 

        对数据库更新大致上额可以分为两部分内容,一个部分是根据本表的数据更新,一个是从其他表中的数据进行更新。下面分别举例说明

        从本表更新

          (更新前的数据库)

       

       (执行的SQL语句)(这条SQL语句的意思是,更新班级ID为11的数据,将符合条件的数据的姓名改为“王五”,成绩改为“60”)

 

 (执行后的结果)

 

      

         从其他表更新

   (更新之前的数据库。因为是从其他表更新,这里涉及到了两张表)

     

       (执行的SQL语句)

         update student set score=score+5 where classID in (select classID from class where ClassType='高中')

            这句话的意思是,从class表找到classType为“高中"的班级,将这个班级中的学习的成绩加5分。

     

         (执行后的结果)

       

 

 

       TOP语句

     使用TOP表达式可以指定要更新的行数或行数的百分比,TOP表达式可以用在SELECT,INSERT,UPDATE,DELETE语句中。

         基本语法

  

[sql] view plain copy

1. <span style="font-size:18px;">           </span><span style="font-size:24px;">TOP(expression)[PERCENT] [WITH TIES]</span>  

 

     其中expression用来指定要返回的行数的数据表达式,with ties用来返回额外行数,select语句中只有指定了Order by语句后才能指定with ties语句。

 

   下面说几个小例子。

         

[sql] view plain copy

1. <span style="font-size:24px;"></span><pre name="code" class="sql">  Updete top(10) 成绩表 set 成绩=成绩+10  


     这条SQL语句的意思是 从成绩表中的    对前10条记录中的成绩都加上10分。

     

[sql] view plain copy

1. Updete top(10) PERCENT 成绩表 set 成绩=成绩+10  


     和上条语句多了一个单词,这句SQL语句的意思是对前10%的记录的成绩都加上10分。

 

    最后一个例子来说说with ties.

    看这样一条SQL语句,这条语句要做的操作,就是按学生的成绩取出前四名。

         然后我执行了这样一条语句

         

 

       不是很难,取出了前四名的学生。但是,我们看一下我们的学生表

       

     

           这里在第四名的位置上有一个并列的成绩,也就是说前四名的成绩其实是有五条数据的。显然这样的操作不是很合理

      

        然后,with ties给了我们这个方便。看下面的例子。同样取的前四名,但这次查询到了五条数据。这就是with ties 的强大之处。

        

 

        删除

       使用删除,我们可以使用delete语句    

[sql] view plain copy

1. DELETE talbe_or_view  

2. FROM table_sources  

3. WHERE search_condition<strong>  

4. ng>  

 

           如果我们要删除表中的全部数据,可以使用如下的语句

[sql] view plain copy

1. TRUNCATE TABLE table_name  

           使用该语句可以快速删除表中的所有记录,而且无日志记录,只记录数据页的释放操作。这条语句执行的速度比使用delete去删除整个表,速度更快,事务日志资源更少。

    

    总结

         经常与数据库打交道,但是对数据库的操作和知识的了解,基本上停留在了基本的增删改查,就这每次写都要去看怎么写语句。加上上几篇的总结,又重新总结了一次增删改查,这次的收获真的很大。简单的增删改查,其中也有好多不知道的知识,而且这些我不知道的东西,都是有很大的使用性的。比如top语句with ties的使用。 

本文由职坐标整理并发布,希望对同学们学习SQL Server有所帮助,更多内容请关注职坐标数据库SQL Server数据库频道!

本文由 @小标 发布于职坐标。未经许可,禁止转载。
喜欢 | 0 不喜欢 | 1
看完这篇文章有何感觉?已经有1人表态,0%的人喜欢 快给朋友分享吧~
评论(0)
后参与评论

您输入的评论内容中包含违禁敏感词

我知道了

助您圆梦职场 匹配合适岗位
验证码手机号,获得海同独家IT培训资料
选择就业方向:
人工智能物联网
大数据开发/分析
人工智能Python
Java全栈开发
WEB前端+H5

请输入正确的手机号码

请输入正确的验证码

获取验证码

您今天的短信下发次数太多了,明天再试试吧!

提交

我们会在第一时间安排职业规划师联系您!

您也可以联系我们的职业规划师咨询:

小职老师的微信号:z_zhizuobiao
小职老师的微信号:z_zhizuobiao

版权所有 职坐标-一站式IT培训就业服务领导者 沪ICP备13042190号-4
上海海同信息科技有限公司 Copyright ©2015 www.zhizuobiao.com,All Rights Reserved.
 沪公网安备 31011502005948号    

©2015 www.zhizuobiao.com All Rights Reserved

208小时内训课程