当前位置: 首页 > news >正文

php 读取网站文件自己怎么做外贸英文网站

php 读取网站文件,自己怎么做外贸英文网站,网站后台功能,如何做小程序平台文章目录 一、发现问题二、场景1:在where条件中查询了修改表的数据三、场景2:在set语句中查询了修改表的数据 一、发现问题 在一次准备处理历史数据sql时,出现这么一个问题:You cant specify target table 表名 for update in FR…

文章目录

  • 一、发现问题
  • 二、场景1:在where条件中查询了修改表的数据
  • 三、场景2:在set语句中查询了修改表的数据

一、发现问题

在一次准备处理历史数据sql时,出现这么一个问题:You can't specify target table '表名' for update in FROM clause,大致的意思就是:不能在同一张表中先select再update。

在此进行一下复盘沉淀,使用测试sql复现当时的场景(mysql是8版本),准备测试数据:

CREATE TABLE `student` (`id` int NOT NULL,`name` varchar(255) DEFAULT NULL,`address` varchar(255) DEFAULT NULL,PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci;INSERT INTO `athena_opencourse`.`student`(`id`, `name`, `address`) VALUES (1, '张三', '北京');
INSERT INTO `athena_opencourse`.`student`(`id`, `name`, `address`) VALUES (2, '李四', '上海');

二、场景1:在where条件中查询了修改表的数据

update student set address = '杭州'
where id in (select id from student where name = '张三');delete from  student
where id in (select id from student where name = '张三');

此时会提示:1093 - You can’t specify target table ‘student’ for update in FROM clause

解决方式:在where子句中再加一层,使其成为临时表:

update student set address = '杭州'
where id in (select tmp.id from (select id from student where name = '张三') tmp);

三、场景2:在set语句中查询了修改表的数据

update student set address = (select address from student where name = '李四')
where name = '张三';

此时,一样的报错:> 1093 - You can’t specify target table ‘student’ for update in FROM clause

解决方式同上,查询时再加一层,使其成为临时表:

update student set address = (select tmp.address from (select address from student where name = '李四') tmp)
where name = '张三';

或者使用update join的方案:

update student s1 ,student s2 
set s1.address = s2.address
where s1.name = '张三' and s2.name = '李四';

惊呆了有木有!使用update join语法,可以很轻松的实现跨表的数据修改。

当然,上面的例子中,两个表之间的数据并没有关联关系,如果有关联关系的话,比如说同一个id更新相同的数据,可以使用left join on的语法:

update student s1 
left join student s2 on s1.id = s2.id
set s1.address = s2.name;

http://www.yayakq.cn/news/907614/

相关文章:

  • 企业网站建设北京做微信平台网站
  • 网站开发工程师任职要求长沙多迪php网站开发培训学校
  • 廊坊做企业网站公司湘潭网站建设 就问磐石网络专业
  • jsp网站开发引用文献百度小程序注册
  • 网站推广设计方案目标怎么写如何制作一个网站
  • 自适应网站建设选哪家可信网站认证 代理商
  • 亿度网络 网站建设商洛做网站的公司
  • 做网站可以用哪些语言潜江网站搭建
  • 酒店微信网站建设网站建设的关键问题
  • .net开发手机网站wordpress plugins.php
  • 网站建设营销推广实训总结网站制作建设公司
  • 免费试用网站 源码印象笔记wordpress同步
  • 南通网站建设公司排名富国基金公司网站
  • nft制作网站私密浏览器在线看
  • 网站群 建设 方案怎么做百度网站验证码
  • 西安网站建设中企建站wordpress 公式
  • asp网站程序优点北京网下载
  • 网站建设需要资料网站设计总结
  • 提升型企业网络营销网站青海省教育厅门户网站登录
  • 网站301检测北京网站开发品牌
  • 网站开发语言数据库有几种开发个网站多少钱
  • server2008部署网站西安市建设网站
  • 模板免费网站建设江门电商网站设计培训
  • 免费域名网站推荐什么是网络营销直播
  • 运动网站模板名词解释 网站内容
  • 模板网站平台农产品交易平台
  • 公司注册的流程与步骤无锡网站关键词优化软件咨询
  • 厦门建设厅查询网站首页怎样登网站
  • 加强网站硬件建设方案网站建设教程信赖湖南岚鸿点 赞
  • 网站备案 地域制作网站网页