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

如何根据categories表指定cat_id查询courses表中的对应课程?

你的需求可以通过两种方式实现,取决于你是否需要关联分类表的信息:

  1. 仅获取课程信息(无需关联分类表)
    如果只是要提取courses表中对应指定cat_id的课程,不需要关联categories表,直接查询即可,这样更高效:
SELECT course_name, course_description
FROM courses
WHERE cat_id = 'ScTh01';

这条语句会直接返回cat_id为ScTh01的所有课程(也就是示例中的Python和Java)。

  1. 关联分类表查询(验证分类有效性或获取分类信息)
    如果需要确保目标cat_id在categories表中存在,或者要同时获取分类的相关字段(比如分类名称),可以保留关联查询,但可以简化WHERE条件或使用表别名让语句更清晰:
SELECT c.course_name, c.course_description, cat.cat_name, cat.cat_description
FROM courses c
INNER JOIN categories cat 
    ON c.cat_id = cat.cat_id
WHERE cat.cat_id = 'ScTh01';

这里用表别名c和cat简化了语句,同时可以按需选择要查询的字段。

你原来的SQL语句本身是可以正常运行的,但存在冗余——因为你已经通过courses.cat_id过滤,关联categories表在这里没有额外作用(除非你需要返回分类表的字段),所以可以根据实际需求选择上面两种方案之一。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.24 20:52:20