首先回顾下,sql update语句是用于修改表中的数据。


语法:

UPDATE 表名称 SET 列名称 = 新值 WHERE 列名称 = 某值



SQL update批量更新实例


1、通过同一表内update复制列到另一列,如下图所示,在原表增加列score2,且把score的值复制过来


SQL update批量更新_java

语句如下:



update student set score2= score


输出结果

SQL update批量更新_java_02


如果是异表数据更新过来呢?应该怎么操作?请往下看~


2、特殊情况下,某表需要增加列外键与另一表(可能是另一个库的表)关联,这种情况由于没有关联性,往往通过纸质资料做电子表格再做临时表来通过批量更新关系数据


如student 表,需要增加列grade_id



另一张临时表Grade表(可能是电子表格导入的临时表)如下:



现需求在student表上增加的Grade_id对应赋值,语句如下 :





update student set grade_id = (select grade_id from grade a where a.student_id=student.id) where student.id in (select student_id from grade)


输出结果如下:

SQL update批量更新_java_03


小结: sql update批量更新,主要是利用关联子查询来对应关系更新,须注意的是两表值对应关系和条件范围。


mysql 1044 mysql1044 创建数据库

错误图片解决mysql -u root -p 以root身份进入mysql grant all on *.* to 'root'@'%' identified by 'root用户的密码' with grant option; 授权 flush privileges; 刷新权限原理:开放其他ip对数据库的访问权限 授予root用户在任何ip访问下对所有库所有表的操作权限 其中:GRANT 中文意思

python json 反斜杠 python反斜杠用法

path2 = "c:\\windows\\temp\\readme.txt"path2:用一个"\"取消第二个"\"的特殊转义作用,即为"\\" 就是当你想用路径的时候一个反斜杠写两个即可

python心跳 python心跳机制

1、下位机给上位机间隔发送心跳2、下位机收到上位机的指令时,返回相应参数(这里写固定死了)3、直接放while循环里,实现断线重连4、使用了17个线程模拟17个下位机# -*- coding:utf-8 -*- # Author : tang # Data : 2020-06-05 9:02:56 import socket import time,threading def tt1(tcp_po