`
冷寒冰
  • 浏览: 254791 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

MySQL数据库update更新子查询

 
阅读更多
比如:


UPDATE test.tb_vobile a
set a.name = '111 '
WHERE
a.id = (select max(id) id from test.tb_vobile)
报错:



[SQL]UPDATE test.tb_vobile a
set a.name = '111 '
WHERE
a.id = (select max(id) id from test.tb_vobile)


[Err] 1093 - You can't specify target table 'a' for update in FROM clause


以下可通过:


UPDATE test.tb_vobile a
join
(select max(id) id from test.tb_vobile) b
on a.id = b.id
set a.name = '123 ';


UPDATE test.tb_vobile a ,(select max(id) id from test.tb_vobile) b
set a.name = '321 '
WHERE
a.id = b.id ;
说明:

1、update 时,更新的表不能在set和where中用于子查询;
2、update 时,可以对多个表进行更新(sqlserver不行);
如:update ta a,tb b set a.Bid=b.id ,b.Aid=a.id;
3、update 后面可以做任意的查询,这个作用等同于from;
分享到:
评论

相关推荐

    MySQL锁类型以及子查询锁表问题、解锁1

    在实际应用中,可能会遇到死锁问题,特别是在涉及子查询的更新语句中。如描述中所示,如果一个事务在更新时对子查询中的表进行锁定,可能导致其他事务尝试获取已被锁定的资源,从而引发死锁。MySQL在检测到死锁时会...

    MySQL数据库应用形考实验1-4全答案.zip

    更高级的查询技巧,如子查询、聚合函数(COUNT, SUM, AVG等)和JOIN操作也会在此部分被讲解。 实验训练3:数据增删改操作 这部分实验主要涉及数据的插入(INSERT)、更新(UPDATE)和删除(DELETE)操作。了解如何...

    MySQL数据库原理及应用(第2版)(微课版)-教学用数据库(Mysql数据库备份文件).zip

    理解子查询、联接操作、聚合函数和窗口函数等高级概念,能帮助我们编写复杂的查询。 5. **备份与恢复**:备份文件如"50183 MySQL数据库原理及应用(第2版)(微课版)-教学用数据库(Mysql数据库备份文件)",提供了...

    MySQL数据库习题和实践答案.rar

    MySQL数据库是世界上最受欢迎的开源关系型数据库之一,广泛应用于各种规模的企业、网站和应用程序中。这份"MySQL数据库习题和实践答案"的压缩包文件,很可能是为了帮助学习者加深对MySQL理论知识的理解并提高实际...

    MySQL数据库考试练习题 mysql试题集 共28页.pdf

    1. **子查询**:学习如何使用子查询来处理复杂的查询需求,包括嵌套子查询和多行子查询。 2. **连接查询**:理解不同类型的连接(如内连接、左连接、右连接等)及其应用场景。 3. **聚合函数与分组**:熟练运用`SUM`...

    《MySQL数据库原理及应用》教案.rar

    这部分将详细介绍SQL语法,包括数据类型、数据操作(如INSERT、UPDATE、DELETE)、数据查询(SELECT语句)、以及更复杂的联接、子查询和聚合函数。 4. **数据库设计**:课程会深入到数据库设计的细节,包括需求分析...

    MySQL数据库任务驱动式教程(第2版)(微课版)-电子教案.rar

    同时,还会涉及更高级的SQL操作,如JOIN用于合并多个表的数据,子查询用于嵌套查询,以及聚合函数(如SUM, COUNT, AVG等)用于统计分析。 事务处理是数据库系统中的关键概念,本教程会讲解ACID(原子性、一致性、...

    MySQL数据库基础实例教程(第2版)(微课版)-教学课件.zip

    第五章 数据查询:深入研究复杂的SQL查询技术,如子查询、聚合函数、排序(ORDER BY)、分页(LIMIT)等。此外,还会涉及连接操作的优化,如使用索引来提升查询性能。 第六章 数据视图:讲解视图的概念,如何创建和...

    mysql数据库 实训 试题

    通过以上解析,我们可以看到MySQL数据库操作包含了创建数据库和表、插入数据、更新数据、删除数据以及各种复杂的查询操作等。这些操作是学习MySQL数据库的重要组成部分,对于初学者来说非常重要。

    Linux平台的MySQL数据库操作与创建.pdf

    Linux平台的MySQL数据库操作与创建 Linux操作系统和MySQL数据库是当前最流行的系统平台和应用软件。Linux是功能强大、高效、开放式的操作系统,而MySQL是快速、功能强大的数据库。以下是Linux平台上的MySQL数据库...

    MySQL数据库笔试试题及答案(全)

    根据给定文件的信息,我们可以总结出一系列关于MySQL数据库的基础知识点,涵盖了SQL语言的基本操作、数据检索、表结构管理以及高级特性等内容。以下是针对文件中提到的一些关键知识点的详细解释: ### 1. 聚合函数 ...

    全国计算机二级考试MySQL数据库程序设计教学视频课程(14章)

    ### 全国计算机二级考试MySQL数据库程序设计教学视频课程知识点概览 #### 一、数据库基础知识 - **数据库概念**:介绍数据库的基本概念,包括什么是数据库、数据库管理系统(DBMS)及其作用。 - **数据库发展史**...

    MySQL数据库设计.pdf

    此外,MySQL 5版本引入了子查询、视图、存储过程、触发器、事务处理等功能,进一步增强了其功能性和安全性。 ### MySQL数据类型 MySQL支持多种数据类型,包括数值类型(整数、浮点数、定点数)、字符串类型(字符...

    《MySQL数据库原理》PPT

    - 查询语句的编写技巧:避免全表扫描,合理使用JOIN和子查询。 - 使用EXPLAIN分析查询执行计划。 - 索引的使用和优化策略。 9. **备份与恢复** - 数据备份:全量备份、增量备份和差异备份。 - 数据恢复:如何...

    MySQL数据库应用实战教程(慕课版)-PPT详细版.rar

    首先,从标题我们可以推测,这份教程可能包含了关于MySQL数据库的基本概念、安装配置、数据类型、SQL语句(如SELECT、INSERT、UPDATE、DELETE等)、表的创建与管理、索引的使用、视图、存储过程、触发器、事务处理、...

    计算机二级《MySQL数据库程序设计》知识点总结.pdf

    MySQL数据库程序设计涵盖了多个方面,包含了对MySQL数据库的基本操作,以及数据查询、表操作、索引和视图的管理,还涉及到了SQL语句中的一些高级用法。以下是对这些知识点的详细解释: 1. 数据操作: - 检索:通过...

    西安电子科技大学MySQL数据库上机2答案

    西安电子科技大学的MySQL数据库上机任务旨在让学生深入理解数据库管理和SQL语言的核心概念。...同时,自由练习第四章中级SQL的其他特性,鼓励学生探索更多如联接查询、子查询、事务处理、存储过程等高级功能。

    MySql数据库代码

    还有可能包含子查询、视图、存储过程和触发器的示例,这些都是更高级的MySQL特性。学习如何使用这些功能将帮助你更好地理解和管理复杂的数据关系。 为了深入了解MySQL,你还需要学习事务处理、索引优化、权限管理...

Global site tag (gtag.js) - Google Analytics