You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

三张表单表外键关联另外两表,如何查询用户选择的课程?

查询用户所选课程语句实现
  • 存在users(用户表,主键id)、classes(课程表,主键id)、userclasses(用户选课关联表)三张表
  • userclasses的userId字段关联users.id,classId字段关联classes.id,用于记录用户的选课关系

表结构参考:
表结构示意图


查询指定用户的所有选课信息

如果仅需要返回课程相关信息,直接关联关联表和课程表即可,将语句中<目标用户ID>替换为实际查询的用户ID即可执行:

SELECT classes.* FROM classes
JOIN userclasses ON classes.id = userclasses.classId
WHERE userclasses.userId = <目标用户ID>;

如果需要同时返回用户基础信息+对应的选课信息,关联三张表即可:

SELECT users.*, classes.* FROM users
JOIN userclasses ON users.id = userclasses.userId
JOIN classes ON userclasses.classId = classes.id
-- 可选:添加筛选条件查询指定用户
-- WHERE users.id = <目标用户ID>

如果课程表有软删除、状态类字段,可自行在WHERE条件中追加过滤规则,例如追加AND classes.is_deleted = 0即可仅查询未删除的有效课程。

内容的提问来源于stack exchange,提问作者Alibi Tolebay

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.27 05:24:04