删除学习“叶平”老师课的sc表记录

要删除学习叶平 老师课程的成绩表(SC)记录,需要多表关联定位数据:

  1. Teacher表找到叶平的教师编号t_no
  2. 通过t_noCourse表找到对应课程编号c_no
  3. 通过c_noSC表找到需要删除的成绩记录

SQL 实现代码

MySQL / Oracle 通用写法(推荐,兼容性最好)

sql

复制代码
-- 删除学习叶平老师课程的SC表记录
DELETE FROM sc
WHERE sc.c_no IN (
    -- 子查询:获取叶平老师教授的所有课程编号
    SELECT course.c_no 
    FROM course
    JOIN teacher ON course.t_no = teacher.t_no  -- 课程表关联教师表
    WHERE teacher.tname = '叶平'  -- 筛选教师姓名为叶平
);

多表连接删除写法(MySQL 专用)

sql

复制代码
-- MySQL 多表连接删除
DELETE sc
FROM sc
JOIN course ON sc.c_no = course.c_no
JOIN teacher ON course.t_no = teacher.t_no
WHERE teacher.tname = '叶平';

代码说明

  1. 核心逻辑 :通过教师表→课程表→成绩表的关联关系,精准定位要删除的成绩记录
  2. 子查询作用 :先查出叶平老师教的所有课程编号,再删除成绩表中对应课程的记录
  3. 安全提示 :执行DELETE前,建议先执行SELECT查询确认要删除的数据,避免误删:

sql

复制代码
-- 先查询验证数据(必做!)
SELECT * FROM sc
WHERE sc.c_no IN (
    SELECT course.c_no 
    FROM course
    JOIN teacher ON course.t_no = teacher.t_no
    WHERE teacher.tname = '叶平'
);

总结

  1. 多表删除需逐层关联定位目标数据
  2. 优先使用IN子查询写法,适配所有数据库
  3. 删除前必须用SELECT验证数据,防止误操作
相关推荐
通信小呆呆4 天前
当算法有了“五感”:多模态数据融合如何向人体感官协同学习?
人工智能·学习·算法·机器学习·机器人
H__Rick4 天前
自动对焦学习-3
人工智能·学习·计算机视觉
Daisy Lee4 天前
量化学习-第1章-什么是量化金融
学习·金融·datawhale
Alsn864 天前
等待学习-学习目录:Docker 容器安全攻防
学习·安全·docker
YM52e4 天前
买菜计算器小应用 - HarmonyOS ArkUI 开发实战-PC版本
学习·华为·harmonyos·鸿蒙·鸿蒙系统
小雨下雨的雨4 天前
HarmonyOS ArkUI训练营入门-组件掌握系列-Animation 动画效果实现-PC版本
学习·华为·harmonyos·鸿蒙
cqbzcsq4 天前
CellFlow虚拟细胞论文阅读
论文阅读·人工智能·笔记·学习·生物信息
YangYang9YangYan4 天前
2026初入职场学习数据分析的价值
学习·数据挖掘·数据分析
guslegend4 天前
理论学习:什么是 Coding Agent?
学习
自传.4 天前
尚硅谷 Vibe Coding|第三章(1) Claude Code深度使用与进阶技巧 学习笔记
笔记·学习·尚硅谷·vibecoding