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

电子商务 网站开发二维码生成短链接

电子商务 网站开发,二维码生成短链接,打开公众号,淘宝城购物中心mysql中You can’t specify target table for update in FROM clause错误 You cannot update a table and select directly from the same table in a subquery. mysql官网中有这句话,我们不能在一个语句中先在子查询中从某张表查出一些值,再update这张表…

mysql中You can’t specify target table for update in FROM clause错误

You cannot update a table and select directly from the same table in a subquery.

mysql官网中有这句话,我们不能在一个语句中先在子查询中从某张表查出一些值,再update这张表。

比如:

mysql> UPDATE items
SETretail = retail * 0.9
WHEREid IN (SELECTidFROMitemsWHEREretail / wholesale >= 1.3AND quantity > 100);

这个语句执行的时候会报错: ERROR 1093 (HY000): You can't specify target table 'items' for update in FROM clause

针对这种报错,有两种方法解决:多表更新和中间表

方法一 多表更新

我们可以通过多表更新来解决这个问题,连表时一张表是实际要更新的表,另一长表是原来的子查询派生出来的表,我们使用别名引用派生表。比如上面的例子中的sql,可以改写成如下写法:

update items,
(SELECTidFROMitemsWHEREretail / wholesale >= 1.3AND quantity > 100
) a
setretail = items.retail * 0.9
whereitems.id = a.id

方法二 中间表

中间表的含义是将子查询再包一层,比如上面的语句可以改写成:

UPDATE items
SETretail = retail * 0.9
WHEREid IN (selectidfrom(SELECTidFROMitemsWHEREretail / wholesale >= 1.3AND quantity > 100) aa);

需要注意的是,mysql优化器可能会优化子查询,这时候仍然会抛出错误。我们可以使用optimizer_switch变量关闭这种行为;

#将derived_merge标志设置为off
SET optimizer_switch='derived_merge=off';

derived_merge是MySQL中的查询优化技术之一,用于控制派生表合并(derived merge)优化的行为。 在MySQL中,当执行复杂的查询时,可能会涉及到派生表,即在查询中使用子查询作为临时表。派生表合并是一种优化技术,它尝试将多个派生表合并为一个更简单的查询结构,以提高查询性能

参考: https://fanyi.youdao.com/index.html#/ https://dev.mysql.com/doc/refman/8.0/en/update.html

图片

                                                        点个“赞 or 在看” 你最好看!

                                                                喜欢,就关注我吧!

图片

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

相关文章:

  • 有口碑的镇江网站优化足球比赛直播在哪看
  • 襄阳网站建设首选公司哪家好wordpress查看ftp服务器
  • 网站建设连接全球招商网加盟网
  • 东莞网站建设营销服务平台网站编程多少钱
  • 一个网站如何优化在线网页代理服务器
  • 建网站自己与租云服务器哪个好网站制作公司兴田德润怎么联系
  • 中国网站开发公司排名软件外包产生的背景和原因
  • 招聘网站开发价格wordpress底板版权
  • 河南定制网站建设报价网页qq网址
  • 微信制作网站平台网站建设有哪些
  • 家庭服务网站的营销策略网站开发电商项目的成本管理怎么写
  • 专业做中文网站网站建设合同 免责声明
  • wordpress迁移网站做网站公司有哪些
  • 淘宝电商网站怎么做怎样创建app
  • 企业建立网站的目的网页版微信读书
  • 濮阳网站建设熊掌网络高端网站建设公司哪家服务好
  • 搜索网站logo怎么做门户网站建设情况说明
  • 住房和城乡建设部建设司网站首页做网站学不需要做后台管理系统
  • 沈阳网站建设公众号对网站进行seo优化
  • 网站怎么才能被搜到落地页制作用什么软件
  • 建设网站那个平台好长沙建设工程造价网
  • 招聘网站建设需求o2o网站建设市场
  • 河东手机网站建设中国能源建设集团有限公司董事长
  • win7 asp.net网站架设个人网页设计大全
  • 企业网站建设指导思想推广平台大全
  • 兴化网站制作建设电影网站代码
  • 网站设计网址深圳市住建局官网平台
  • mvc做网站用的多不多做网站推广前途
  • wordpress优秀网站福建省建设厅网站 2013
  • 怎样给自己做网站重庆网站建设qq群