mysql update连表

UPDATE price_air_item t1 LEFT JOIN order_item t2 ON t1.ORDER_ITEM_ID = t2.ORDER_ITEM_ID SET t1.BUYER_SHOULD_PAY_AMOUNT = t1.PARTNER_ADJ_TOTAL_AMOUNT WHERE t2.CREATED_REQUEST_TYPE = 'LOTTO-OTA' AND t2.CREATED_BY ='LOTTO-OTA' AND t1.GMT_CREATED = '2017-12-06 14:02:00'

 

 

正常的写法是 update  table set field ='' where  id=(select   ***************条件);

例如:

 

update  tb_wd_rpmtplan_base  r  set r.SHD_RPMT_DATE='2018-03-11' ,r.id='dfasdf'

where r.PROJECT_ID=(
select p.id from tb_zc_project_info p
join tb_wd_loanapply_base lb on lb.project_id=p.id
where lb.APPLY_NUM='RY201803111340200'
  );

但是需要join on的语法我尝试很久,都是写不对的,如果我们一定要用到 left join 更新,那么怎么写呢。我总是在网上看到例子了。

语法是:

update  table  t1 (left) join   table2 t2 on  ( t1.id=t2.pid )set ti.fiele='' where t2.filed='' 

例如:

UPDATE tb_wd_rpmtplan_base r
LEFT JOIN  tb_zc_project_info p
ON r.PROJECT_ID=r.ID
set r.SHD_RPMT_DATE='2018-03-11'

where p.id='dfsadf'

--------------------- 作者:Oo当前明月oO 来源:CSDN 原文:https://blog.csdn.net/xun573017588/article/details/79517354?utm_source=copy 版权声明:本文为博主原创文章,转载请附上博文链接!

posted on   dhj  阅读(4205)  评论(0编辑  收藏  举报

编辑推荐:
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
阅读排行:
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· 阿里巴巴 QwQ-32B真的超越了 DeepSeek R-1吗?
· 【译】Visual Studio 中新的强大生产力特性
· 张高兴的大模型开发实战:(一)使用 Selenium 进行网页爬虫
· 【设计模式】告别冗长if-else语句:使用策略模式优化代码结构
历史上的今天:
2016-10-10 java 枚举

导航

< 2025年3月 >
23 24 25 26 27 28 1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 31 1 2 3 4 5
点击右上角即可分享
微信分享提示