几种更新(Update语句)查询的方法

几种更新(Update语句)查询的方法

大家好,又见面了,我是全栈君,祝每个程序员都可以多学几门语言。

正 文:

数据库更新就一种方法Update,
其标准格式:Update 表名 set 字段=值 where 条件
只是依据数据的来源不同,还是有所差别的:

 
1.从外部输入
这样的比較简单
例:update tb set UserName=”XXXXX” where UserID=”aasdd”

2.一些内部变量,函数等,比方时间等
直接将函数赋值给字段
update tb set LastDate=date() where UserID=”aasdd”

3.对某些字段变量+1,常见的如:点击率、下载次数等
这样的直接将字段+1然后赋值给自身
update tb set clickcount=clickcount+1 where ID=xxx

4.将同一记录的一个字段赋值给还有一个字段
update tb set Lastdate= regdate where XXX

5.将一个表中的一批记录更新到另外一个表中
table1
ID f1 f2
table2
ID f1 f2
先要将table2中的f1 f2 更新到table1(同样的ID)

update table1,table2 set table1.f1=table2.f1,table1.f2=table2.f2 where table1.ID=table2.ID

6.将同一个表中的一些记录更新到另外一些记录中
表:a
ID   month   E_ID     Price
1       1           1        2
2       1           2        4
3       2           1         5
4       2           2        5
先要将表中2月份的产品price更新到1月份中
显然,要找到2月份中和1月份中ID同样的E_ID并更新price到1月份中
这个全然能够和上面的方法来处理,只是因为同一表,为了区分两个月份的,应该将表重命名一下
update a,a as b set a.price=b.price where a.E_ID=b.E_ID and a.month=1 and b.month=2

当然,这里也能够先将2月份的查询出来,在用5.的方法去更新

update a,(select * from a where month=2)as b set a.price=b.price where a.E_ID=b.E_ID and a.month=1

 

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/118086.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • Bulma_bulimia

    Bulma_bulimiaBulma 是一个基于 Flexbox 构建的免费、开源的CSS框架,已经有超过200,000开发者在使用。https://bulma.zcopy.site/ht

    2022年8月4日
    6
  • docker导出镜像命令_docker save将容器保存为镜像

    docker导出镜像命令_docker save将容器保存为镜像导入导出命令介绍涉及的命令有export、import、save、loadsave示例dockersave-onginx.tarnginx:latest或dockersave>nginx.tarnginx:latest其中-o和>表示输出到文件,nginx.tar为目标文件,nginx:latest是源镜像名(name:tag),后面也可以是容器idload示例dockerload-inginx.tar或dockerload<n

    2025年9月22日
    6
  • oracle 11g 怎么安装,oracle 11g安装图解 Oracle 11g安装图文教程[通俗易懂]

    oracle 11g 怎么安装,oracle 11g安装图解 Oracle 11g安装图文教程[通俗易懂]之前也找过oracle11g安装图解,不过一直没找到合适的Oracle11g安装图文教程,下面这篇oracle11g安装图解比较详细,希望对Oracle学习者有帮助:一、Oracle下载注意Oracle分成两个文件,下载完后,将两个文件解压到同一目录下即可。路径名称中,最好不要出现中文,也不要出现空格等不规则字符。官方下地址:http://www.oracle.com/technetwo…

    2022年9月21日
    3
  • Velocity(1)——注释[通俗易懂]

    Velocity(1)——注释[通俗易懂]Velocity的单行注释,使用##多行注释使用#*cooments*#

    2022年7月2日
    26
  • matlab手写数字识别实验报告_如何用matlab将图像转为矩阵

    matlab手写数字识别实验报告_如何用matlab将图像转为矩阵本文主要是根据《matlab手写神经网络实现识别手写数字》博客中的代码进行试验。由于没有数据集,所以采用了MNIST数据集进行代码的运行。数据集不同所以需要对代码进行微小改动。简介数据处理:4000张作为训练样本,1000张作为测试样本;图像大小:图片的灰度值矩阵(28,28);图像名称:由标签和顺序号组成。标签_顺序号.bmp训练样本:每个数字的图像名称的顺序号是从0-399,各400…

    2022年9月14日
    3
  • 明德云课堂计算机应用基础,旻德云课堂官网版app「建议收藏」

    明德云课堂计算机应用基础,旻德云课堂官网版app「建议收藏」旻德云课堂app在线快速提供各种云课堂教学软件。该软件使用户可以更好地教云教室。它还提供了各种不同的云端课程,使每个人都可以更好地享受在线云课堂教学,也是最近非常热门的线上云课堂app!软件介绍旻德云课堂app课堂教学的便利性还使老师和同学之间可以更好地进行在线互动,使两方之间的交流变得更加无忧,同时,还可以提高课堂效率,使两方之间的交流更加畅通。简单快捷。旻德云课堂app怎么样?不同的课程都有详…

    2022年6月12日
    86

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号