MYSQL 联表更新和删除

本文涉及的产品
RDS MySQL Serverless 基础系列,0.5-2RCU 50GB
云数据库 RDS MySQL,集群系列 2核4GB
推荐场景:
搭建个人博客
云数据库 RDS MySQL,高可用系列 2核4GB
简介:

update/delete  where in select 当in的数量过大给性能带来很大问题

 

联表更新

Java代码   收藏代码
  1. UPDATE items,month SET items.price='12' WHERE items.id=month.id;  
  2. UPDATE a LEFT JOIN b on a.id=b.a_id SET a.title='aaaaa',b.body='bbbb' WHERE a.id=1  

注意:多表 UPDATE 不可以使用 ORDER BY 或 LIMIT。

 

联表删除

从数据表t1中把那些id值在数据表t2里有匹配的记录全删除掉

Java代码   收藏代码
  1. DELETE t1 FROM t1,t2 WHERE t1.id=t2.id   
  2. //DELETE FROM t1 USING t1,t2 WHERE t1.id=t2.id  

 从数据表t1里在数据表t2里没有匹配的记录查找出来并删除掉

Java代码   收藏代码
  1. DELETE t1 FROM t1 LEFT JOIN T2 ON t1.id=t2.id WHERE t2.id IS NULL   
  2. //DELETE FROM t1,USING t1 LEFT JOIN T2 ON t1.id=t2.id WHERE t2.id IS NULL  

 从两个表中找出相同记录的数据并把两个表中的数据都删除掉

Java代码   收藏代码
  1. DELETE t1,t2 from t1 LEFT JOIN t2 ON t1.id=t2.id WHERE t1.id=25  

 注意此处的delete t1,t2 from 中的t1,t2不能是别名

相关实践学习
如何快速连接云数据库RDS MySQL
本场景介绍如何通过阿里云数据管理服务DMS快速连接云数据库RDS MySQL,然后进行数据表的CRUD操作。
全面了解阿里云能为你做什么
阿里云在全球各地部署高效节能的绿色数据中心,利用清洁计算为万物互联的新世界提供源源不断的能源动力,目前开服的区域包括中国(华北、华东、华南、香港)、新加坡、美国(美东、美西)、欧洲、中东、澳大利亚、日本。目前阿里云的产品涵盖弹性计算、数据库、存储与CDN、分析与搜索、云通信、网络、管理与监控、应用服务、互联网中间件、移动服务、视频服务等。通过本课程,来了解阿里云能够为你的业务带来哪些帮助     相关的阿里云产品:云服务器ECS 云服务器 ECS(Elastic Compute Service)是一种弹性可伸缩的计算服务,助您降低 IT 成本,提升运维效率,使您更专注于核心业务创新。产品详情: https://www.aliyun.com/product/ecs
目录
打赏
0
0
0
0
122
分享
相关文章
docker MySQL删除数据库时的错误(errno: 39)
docker MySQL删除数据库时的错误(errno: 39)
175 0
mysql联表语句练习
.整体表字段如下图所示
90 0
mysql联表语句练习
软件开发入门教程网之MySQL 删除数据库
使用普通用户登陆 MySQL 服务器,你可能需要特定的权限来创建或者删除 MySQL 数据库,所以我们这边使用 root 用户登录,root 用户拥有最高权限。
头大了,Mysql写入数据十几秒后被自动删除了
事情是这样的,在公司内部新开发了一个功能还没有上线,目前部署在测试环境,Node服务会开启一个定时任务,每5分钟会处理好一部分数据写入到mysql数据库中。
232 0
头大了,Mysql写入数据十几秒后被自动删除了
MySQL基础-删除/更新行为
添加了外键之后,再删除父表数据时产生的约束行为,我们就称为删除/更新行为。具体的删除/更新行为有以下几种:
230 0
【MySQL】MySQL命令总结 | 数据库与数据表的创建删除与查询
【MySQL】MySQL命令总结 | 数据库与数据表的创建删除与查询
208 0
AI助理

你好,我是AI助理

可以解答问题、推荐解决方案等