首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

错误代码: 1093。不能在FROM子句中为update指定目标表‘c

错误代码: 1093是MySQL数据库中的一个错误代码,表示在UPDATE语句的FROM子句中为UPDATE指定了目标表'c'。

在MySQL中,UPDATE语句的FROM子句用于指定用于更新的数据来源表。然而,根据MySQL的语法规则,不能在FROM子句中为UPDATE语句指定目标表。

要解决这个错误,可以使用子查询来获取需要更新的数据,然后将其与目标表进行JOIN操作,最后执行UPDATE语句。

以下是一个示例解决方案:

代码语言:txt
复制
UPDATE target_table
JOIN (SELECT * FROM source_table) AS subquery
SET target_table.column1 = subquery.column1, target_table.column2 = subquery.column2
WHERE target_table.id = subquery.id;

在上面的示例中,target_table是要更新的目标表,source_table是数据来源表。通过子查询将数据从source_table中获取,并与目标表进行JOIN操作,然后使用SET子句将需要更新的列进行赋值,最后使用WHERE子句指定更新的条件。

需要注意的是,具体的表名、列名以及更新条件需要根据实际情况进行调整。

腾讯云提供了MySQL数据库的云服务,您可以使用腾讯云的云数据库MySQL来进行数据库的管理和操作。您可以访问以下链接了解更多关于腾讯云云数据库MySQL的信息:

腾讯云云数据库MySQL产品介绍:https://cloud.tencent.com/product/cdb_mysql 腾讯云云数据库MySQL文档:https://cloud.tencent.com/document/product/236

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

  • Mysql删除满足自己某个条件的

    SELECT * FROM 名 WHERE 统计日期 IN( SELECT DISTINCT 统计日期 FROM 名 WHERE 字段1='data1') AND 字段1 'data1' 真改完了后就是这种...错误代码1093 You can't specify target table '名' for update in FROM clause 其实仔细想想逻辑还是有问题的,循环用了同一张,会形成类似于死循环的操作...,虽然我们明白这样好像没什么问题,但是电脑和你不一样, mysql在把子查询结果作为删除中数据的条件,而mysql不允许在查询的同时删除原数据 解决办法: 方法一、分步骤: 先创建临时 create...table tmp(SELECT DISTINCT 统计日期 FROM 名 WHERE 字段1='data1') 再执行删除 delete FROM 名 WHERE 统计日期 IN(SELECT...* FROM tmp) AND 字段1 'data1' 最后删除临时 drop table tmp 方法二直接删除 链接:https://blog.csdn.net/jaryle/article

    2.7K20

    史上最全的 DB2 错误代码大全

    或DELETE)和FROM句中和视图命名不合法 -119 42803 HAVING语句中的列的列表与GROUP BY语句中的列列表匹配 -120 42903 不允许WHERE语句、SET语句、VALUES...-126 42829 不能为一个UPDATE语句指定ORDER BY语句 -127 42905 在选择中DISTINCT只能指定一次 -128 42601 SQL谓词中NULL使用不当 -129 54004...没有定义的对象名 -205 42703 指定的列名无效 -206 42703 列名没有在FROM语句所引用的任何中,或者没有在定义触发器所在的中 -208 42707 不能ORDER BY指定列...-765 560A3 和数据库兼容 -766 560A4 不能对辅助进行请求的操作 -767 42626 CREATE INDEX失败,因为在辅助索引指定了列,或者因为没有为非辅助的索引指定列...-30104 56095 在绑定选项与绑定值中有错误 -30105 56096 指定的绑定选项兼容 ---- 温馨提示:说实话,现在网上传的「DB2 错误代码大全」都是同一个版本,原始出处已经不祥

    4.6K30

    DB2错误代码_db2错误码57016

    或DELETE)和FROM句中和视图命名不合法 -119 42803 HAVING语句中的列的列表与GROUP BY语句中的列列表匹配 -120 42903 不允许WHERE语句、SET语句、VALUES...-126 42829 不能为一个UPDATE语句指定ORDER BY语句 -127 42905 在选择中DISTINCT只能指定一次 -128 42601 SQL谓词中NULL使用不当 -129 54004...没有定义的对象名 -205 42703 指定的列名无效 -206 42703 列名没有在FROM语句所引用的任何中,或者没有在定义触发器所在的中 -208 42707 不能ORDER BY指定列...-765 560A3 和数据库兼容 -766 560A4 不能对辅助进行请求的操作 -767 42626 CREATE INDEX失败,因为在辅助索引指定了列,或者因为没有为非辅助的索引指定列...-30104 56095 在绑定选项与绑定值中有错误 -30105 56096 指定的绑定选项兼容 ---- 温馨提示:说实话,现在网上传的「DB2 错误代码大全」都是同一个版本,原始出处已经不祥

    2.6K10

    MySQL中DML语句和事务的概念「建议收藏」

    UPDATE players ##名 SET leagueno = 2000 ##指定哪些列需要更新和更新的数据 WHERE playerno = 95; ##指定哪些行需要更新 共 1 行受到影响...= ( SELECT sum(amount) FROM penalties pen WHERE pen.playerno = pd.playerno); ##sum_penalties更新的数据多表连接后的总数...错误代码: 1064 面对这种情况,我们可以使用变量的方法进行更新 SET @avg_amount := (SELECT avg(amount) FROM penalties); ##设置变量 UPDATE...BY paymentno DESC; ##降序排列后加1 语句释义:把所有罚款的编号增加1 6.update句中的limit语句 UPDATE句中可以使用LIMIT子句,指定一次更新的行数 示例...[WHERE where_condition] 如果FROM中的有别名,在DELETE子句中只能使用别名 示例: DELETE teams, matches FROM teams, matches

    2K20

    Oracle查询优化-04插入、更新与删除数据

    insert into dept(deptno,dname,loc) values(19,'xgj','BEIJING'); 讨论 作为一种简便方式,在insert语句中,可以省略字段列表, 然而,如果语句中没有列出要插入行中的目标字段...解决方案 我们可以建立一个包含C4列的View,新增数据时通过这个VIEW就可以。...create table emp2 as select * from emp where 1=2; ---- 注意: 复制的包含默认值等约束信息,使用这种方式复制表后,需要重建默认值及索引和约束等信息...employees WHERE employee_id>200; 1、指定所有跟随着的多表 insert_into_clauses 执行无条件的多表插入; 2、对于每个由查询返回的行, Oracle...注:多表 INSERT 语句上的约束 a、你只能在而不能在视图上执行多表插入; b、你不能执行一个多表插入到一个远程c、在执行一个多表插入时,你不能指定一个集合表达式; d、在一个多表插入中

    1.2K10

    记录下关于SQL Server的东西

    直到返回结果空,终止递归,默认情况下递归次数超过100次,超过100次会终止,可以修改默认设置。...then qty end) as C, sum(case when custid='D' then qty end) as D from dbo.Orders group by empid 在sql...其语法格式: PIVOT后圆括号内指定聚集函数(比如sum)聚集元素、扩展元素以及目标列名称的列表,as后面可以为结果指定一个别名。...select * from cte_order pivot(sum (qty) for custid in(A,B,C,D)) as newtable SQL Server 2008引入了merge语句...,它能在一条语句中根据不同的逻辑进行不同的操作,比如可以根据不同的逻辑进行(delete,update,insert); Merge是基于连接语义的,在merge子句中指定目标的名称,在using子句中指定的名称

    1.3K10

    db2 terminate作用_db2 truncate table immediate

    在搜索的 UPDATE 或 DELETE 语句内标识的行数零。在 FETCH 语句中引用的游标位置处于结果最后一行之后。 02501 游标位置对于当前行的 FETCH 无效。...42805 ORDER BY 子句中的整数标识结果中的列。42806 不能将某值赋予某主机变量, 因为数据类型兼容。42807 对该对象不允许执行 INSERT、UPDATE 或 DELETE。...428C2 检查函数体指出应已在 CREATE FUNCTION 语句中指定给出的子句。 428C4 谓词运算符两边的元素的数目不相同。 428C5 从数据源中找不到数据类型的数据类型映射。...428C9 不能将 ROWID 列指定为 INSERT 或 UPDATE目标列。 428CA 处于追加方式的不能具有集群索引。 428CB 空间的页大小必须与相关联的缓冲池的页大小相匹配。...428DQ 子表或视图的模式名不能与其上一级或上一级视图的模式名不同。 428DR 无法将操作应用于子表或视图。 428DS 不能在子表中定义指定列的索引。

    7.6K20

    Hive3查询基础知识

    [WHERE expression]; 根据可选WHERE子句中指定的条件,UPDATE语句可能会影响中的每一行。WHERE子句中的表达式必须是Hive SELECT子句支持的表达式。...SET语句的右侧不允许查询。分区和存储桶列无法更新。 您必须具有SELECT和UPDATE特权才能使用UPDATE语句。 创建一条语句来更改gpa列的值1.0的所有行的name列中的值。...CREATE TEMPORARY TABLE tmp2 AS SELECT c2, c3, c4 FROM mytable; 3....创建和使用临时。 a) Hive在会话结束时删除临时。 使用查询 Hive支持可用于许多Hive操作的FROM子句和WHERE子句中查询,例如,根据另一个的内容过滤来自一个的数据。...查询是内部查询中的SQL表达式,它将结果集返回到外部查询。从结果集中,评估外部查询。外部查询是包含内部查询的主要查询。WHERE子句中查询包含查询谓词和谓词运算符。谓词是计算布尔值的条件。

    4.7K20

    SQL命令 FROM(二)

    FROM句中值函数 值函数是一个类查询,它被投影一个存储过程,并返回单个结果集。 值函数是任何具有SqlProc TRUE的类查询。...,"End of B data" } 值函数只能在SELECT语句或DECLARE语句的FROM句中使用。值函数名可以用模式名限定,也可以用非限定名(没有模式名)限定;非限定名使用默认模式。...在SELECT语句FROM句中,只要可以使用名,就可以使用值函数。它可以在视图或查询中使用,并且可以使用逗号分隔的列表或显式联接语法与其他引用项联接。...值函数不能直接用于INSERT、UPDATE或DELETE语句。但是,可以为这些命令指定子查询,以指定值函数。...SQL没有为值函数定义EXTENTSIZE,也没有为值函数列定义SELECTIVITY。 FROM句中查询 可以在FROM句中指定子查询。 这称为流查询。

    1.6K40

    mysql 1093 - You can‘t specify target table ‘a‘ for update in FROM clause

    报错意思是:不能在from句中指定要更新的目标 a 如: customer 银行客户信息 bankInfo 银行账户 修改张三的银行卡密码123456: update bankInfo...NameId from customer where `Name`='张三')); # 不能在from句中指定要更新的目标 执行上面SQL语句时出现这个错误,是因为 在更新这个和数据的同时又去查询这个数据...应这样解决: 把要更新的数据符合要求(的几列)数据查询出来,做为一个第三方(临时),然后从中筛选更新。...UPDATE bankInfo AS a SET `password`=123456 WHERE a.idCard=(SELECT b.idCard FROM (SELECT * FROM bankInfo...WHERE NameId=(SELECT NameId from customer WHERE `Name`='张三')) AS b); 这样就可以进行数据更新啦~ 来源:https://blog.csdn.net

    61520

    SQL高级查询方法

    在 Transact-SQL 中,包含查询的语句和语义上等效的包含查询的语句(即联接的方式)在性能上通常没有差别。但是,在一些必须检查存在性的情况中,使用联接会产生更好的性能。...指定用于比较各列的值的逻辑运算符(例如 = 或 )。 可以在 FROM 或 WHERE 子句中指定内部联接;而只能在 FROM句中指定外部联接。...联接条件与 WHERE 和 HAVING 搜索条件相结合,用于控制从 FROM 子句所引用的基中选定的行。 比如下列联接因为是内部联接,因此也可以改写在WHERE条件中指定联接。...在 FROM句中可以用下列某一组关键字来指定外部联接: LEFT JOIN 或 LEFT OUTER JOIN。...定义 CTE 后,可以在 SELECT、INSERT、UPDATE 或 DELETE 语句中对其进行引用,就像引用或视图一样。

    5.7K20

    知识点、SQL语句学习及详细总结

    SQL数据操作语言 1.数据查询语句 1.1 查询语句的基本结构 SELECT --需要哪些列 From --来自哪张 [WHERE <行选择条件...可以分组操作之前应用的筛选条件,在WHERE子句中指定它们更有效,这样可以减少参与分组的数据行。在HAVING子句中指定的筛选条件应该是那些必须在执行分组操作之后应用的筛选条件。...内连接与外连接的区别: 内连接:A与B进行内连接,则结果两个中满足条件的记录集,即C部分。...外连接:如果A和B进行左外连接,则结果 记录集A + 记录集C;如果A和B进行右外连接,则结果 记录集B + 记录集C。...查询 如果一个SELECT语句嵌套在另一个SELECT、INSERT、UPDATE或DELETE语句中,则称为查询或内层查询;而包含查询的语句称为主查询。

    2K20

    《MSSQL2008技术内幕:T-SQL语言基础》读书笔记(下)

    Tip:使用PIVOT运算符一般直接把它应用到源(本例中的Orders),而是将其应用到一个表表达式(该表表达式只包含透视转换需要的3种元素,包含其他属性。)...下面的栗子演示了如何将文件"C:\testdata\orders.txt"中的数据容量插入(bulk insert)到Orders,同时还指定了文件类型字符格式,字段终止符逗号,行终止符换行符(...看看下面的UPDATE语句: UPDATE dbo.T1 SET col1 = col1 + 10, col2 = col1 + 10;   假设T1中的col1列100,col2列200。...@nextval; 6.2.2 新玩法:合并数据   SQL Server 2008引入了一个叫做MERGE的语句,它能在一条语句中根据逻辑条件对数据进行不同的修改操作(INSERT/UPDATE/DELETE...接着输入和输出参数指定取值,各参数之间用逗号分隔。

    8.9K20
    领券