现在要做一下数据移植,需要更新相关的数据,需要在mysql中更新时不能将更新的表作为查询的表。
总结一下:
一:单表更新时
例如: update customer set category = 1 WHERE deleteflag = 0 and name = '22';
注意不要子查询,mysql是不允许的。
二:带子查询的复杂更新
如:
update tb a,
(select time,name
from tt )b
set time4=b.col
where a.name=b.name and a.time1=b.time;
注意点:
1、update 时,更新的表不能在set和where中用于子查询;
2、update 时,可以对多个表进行更新(sqlserver不行);
如:update ta a,tb b set a.Bid=b.id ,b.Aid=a.id;
3、update 后面可以做任意的查询,这个作用等同于from;
参考的文章:感谢原创,弄了半天才弄出来,看到这里,豁然开朗。
http://blog.csdn.net/xys_777/article/details/5793565
原需求:需要将info_stu_train_info的grade字段设成info_person_info中学号的前四位,两表根据personId关联,语句如下:
update info_stu_train_info t,(select left(perNum,4) as grade,personId from info_person_info where perNum is not null and perNum like '20%') as i set t.grade=i.grade
where t.personId=i.personId;
分享到:
相关推荐
子查询可以在`UPDATE`语句中作为条件使用,以更复杂的方式选择要更新的记录。例如,如果我们想将计算机系所有学生的成绩加5分,可以使用如下的SQL语句: ```sql UPDATE SC SET GRADE=GRADE+5 WHERE SNO IN ( ...
- 带子查询的删除:这里未给出具体例子,但可以类似更新语句,根据特定条件删除元组。 在实验过程中,需要注意的是,操作数据库时要谨慎,特别是删除操作,因为一旦执行就无法恢复。此外,当试图使用`INSERT INTO`...
带子查询的修改语句时,例如: UPDATE SC SET Grade = 0 WHERE 'CS' = ( SELECT Sdept FROM Student WHERE Student.Sno = SC.Sno); 本章详细介绍了关系数据库标准语言SQL的基本概念和语法结构,包括数据定义、...
实用数据库上机作业 建立二张数据表,一张是员工信息表(Employee),一张是部门信息表(Department)。 Employee包括:员工编号(EmployeeId, int、员工姓名(EmployeeName, varchar(20))、...(使用带子查询的更新语句)
- 使用WebStorm创建一个Express项目(hotupdate),作为热更新文件的托管服务器。在`public`文件夹下创建`remote-assets`文件夹,用于存放子游戏的更新资源。 3. **构建子游戏**: - 在subgame项目根目录下创建`...
{insert语句占0.4分,update语句占0.4分,delete语句占0.2分,insert要实现单个元组的插入和元组集合的插入(带子查询),要检查实体完整性(唯一和非空),参照完整性约束和check约束,约束缺失扣除0.2分。...
其中还包括了时间戳字段如`create_user`、`create_time`、`update_user`、`update_time`,它们记录了相关操作的用户信息和时间点。 2. 流程管理:在流程设计中,需要对流程的活动进行管理。在本文档中,可以识别出...
- **带子查询的更新**:例如,将计算机科学系所有学生的成绩设为0:`UPDATE SC SET Grade = 0 WHERE Sno IN (SELECT Sno FROM Student WHERE Sdept = 'CS');` 3. **DELETE操作**: - **删除数据**:`DELETE FROM ...
更复杂的是带子查询的修改语句,例如将计算机科学系所有学生的成绩置零,这需要在WHERE子句中使用子查询来确定要修改的元组。 最后,数据删除操作使用`DELETE FROM`语句,格式为`DELETE FROM <表名> [ WHERE <条件>...
- **文具类商品降价**: 创建一个更新查询,将“商品”表中“文具”类商品的单价降价 10%。 - **日用品类商品加价**: 将“日用品”类商品的单价加价 5%。 - 使用 UPDATE 语句进行数据修改。 ##### 5. 交叉表查询 - ...
特别是提出了对DML(Data Manipulation Language)SQL语句的四种基本类型——查询(select)、插入(insert)、更新(update)和删除(delete)——进行建模的方法。 4. SQL语句模型的分段表示:为了更好地解析SQL...
16.3.5 用带子查询的select语句整批量初始化orders集合(fetch属性为“subselect”) 16.3.6 迫切左外连接检索(fetch属性为“join”) 16.4 多对一和一对一关联的检索策略 16.4.1 迫切左外连接检索(fetch...
16.3.5 用带子查询的select语句整批量初始化orders集合(fetch属性为“subselect”) 16.3.6 迫切左外连接检索(fetch属性为“join”) 16.4 多对一和一对一关联的检索策略 16.4.1 迫切左外连接检索(fetch...
16.3.5 用带子查询的select语句整批量初始化orders集合(fetch属性为“subselect”) 16.3.6 迫切左外连接检索(fetch属性为“join”) 16.4 多对一和一对一关联的检索策略 16.4.1 迫切左外连接检索(fetch...
16.3.5 用带子查询的select语句整批量初始化orders集合(fetch属性为“subselect”) 16.3.6 迫切左外连接检索(fetch属性为“join”) 16.4 多对一和一对一关联的检索策略 16.4.1 迫切左外连接检索(fetch...
- 首次更新子模块前需要执行`git submodule init`和`git submodule update`。 - 对子模块进行修改后,需要切换到其`master`分支,然后进行提交和推送操作。 以上就是对Git常用命令的详细介绍。通过掌握这些命令,...
3. **`git submodule update`**:更新子模块到与 `.gitmodules` 文件中记录的提交ID对应的版本。 4. **`git submodule foreach git pull`**:拉取所有子模块的最新代码,执行此命令会依次更新所有子模块至其远程仓库...
4. **克隆带子模块的仓库**:当克隆一个含有子模块的仓库时,需要运行`git submodule init`和`git submodule update`来获取子模块的代码。不执行这些命令,子模块目录只会是一个空的目录。 5. **更新子模块**:若要...
如果要测试这两个场景,则需要使用递归克隆(git clone --recursive )或通过运行“ git submodule update --init- “递归””(如果您已经克隆了不带子模块的存储库)。 这个演示是在建由Team Minigraph微软。演示...