美文网首页
MySQL子查询更新当前表

MySQL子查询更新当前表

作者: 梨花菜 | 来源:发表于2020-08-18 11:37 被阅读0次

错误操作1093 - You can't specify target table 'api' for update in FROM clause

UPDATE api 
SET relation = 16 
WHERE
    id IN ( SELECT a.id FROM api a WHERE project_id = 11 AND NAME LIKE 'szmsg%' );

正确操作

# 先查出条件,然后把这个条件当成一个临时表t2
UPDATE api 
SET relation = 16 
WHERE
    id IN ( SELECT id FROM ( SELECT a.id FROM api a WHERE project_id = 11 AND NAME LIKE 'szmsg%' ) t2 );

相关文章

  • MySQL子查询更新当前表

    错误操作1093 - You can't specify target table 'api' for updat...

  • mysql 查询 - 个人记录

    1.mysql 子查询使用父查询字段作为条件,查询B表数量 2.mysql 根据某字段排行,获取当前用户排名

  • 03随风而逝

    写写今天学到的知识, 简单,少。 《mysql必知必会》:有 子查询,联结表,高级联结,组合查询,插入数据,更新和...

  • MySQL, SQLite 和 PostgreSQL 关于inf

    显示(查询)所有的数据库 MySQL查询: PostgreSQL查询: 查询当前数据库中所有的表信息 like后可...

  • mysql表关系

    mysql数据库 知识要点: 单表查询 子查询 联表查询 事务 在进行查询之前,我们要先建好关系表,并往数据表中插...

  • MySQL 学习 Part7 - MySQL子查询和连接表

    ? MySQL的子查询和连接表以及高级连接表的使用? 兼顾工作和考试实在是太累了 1.子查询语句 1.子查询 需求...

  • MySQL

    1、mysql in和exists区别 in是先进行子查询,然后将内表(子查询)与外表(主查询)进行hash关联(...

  • [转]sql语句:mysql 的delete from 子查询限

    1.使用mysql进行delete from操作时,若子查询的 FROM 字句和更新/删除对象使用同一张表,会出现...

  • oracle语句

    with…as… 不同于MySQL,Oracle不能直接使用as来为子查询获得的表命名,在Oracle中要为子查询...

  • 数据库相关

    mysql查询当前表最小可用id(id补缺策略)select min(id+1) from material c ...

网友评论

      本文标题:MySQL子查询更新当前表

      本文链接:https://www.haomeiwen.com/subject/sybhjktx.html