Mysql 关联查询、关联表删除、多表删除、关联表条件删除 实例(详解)


Mysql 关联查询、关联表删除、多表删除、关联表条件删除 实例(详解)


文章概览

1. 基础结构

2. 关联查询

3. 关联删除

4. 问题解决


基础结构


student 表结构

id name  age

1  小明   18
2  小花   19
3  小丽   20

class 表结构

id name 
1  班级1
2  班级2
3  班级3

s_c_r 关联表结构

id class_id student_id
1  1          1
2  1          2
3  2          3


关联查询


查询学生所对应班级信息

使用技术:INNER JOIN 关联表,INNER JOIN 关键字在表中存在至少一个匹配时返回行

Sql 语句

select c.name as class_name,s.name as student_name
from s_c_r inner join student s on s_c_r.student_id = s.id
inner join class c on s_c_r.class_id = c.id

查询数据模拟

 class_name student_name
  班级1       小明
  班级1       小花
  班级2       小丽

关联删除


学生 信息删除:删除 关联记录 表 学生信息表

**使用技术: delete from table where condition = **

Sql 语句


delete student,s_c_r from student,s_c_r where s_c_r.student_id = student.id and student.name = '小花’

结果


Affected rows: 2
时间: 0.001s


解析: 影响行数 2 条=> 学生班级关联表数据 学生表 数据 =>条件 学生姓名 小花


问题解决



问:使用 delete table_1 from table_1,table_2 只删除 table_1 数据 ?

delete 表名=> 决定 删除哪个表数据

问: delete table_1 from table1 t1 where t1.id=1 执行失败 ?

delete 删除操作 不能使用别名



关注我 用另一种方式解决问题

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值