如何编写正确SQL查询列出Comedy类别所有电影并按字母排序
你写的SQL存在3处错误,修正后可以得到符合要求的结果:
- 缺少WHERE条件筛选分类为
Comedy的记录,错误把筛选逻辑写在了排序语句中,无法过滤出喜剧分类的影片 - 排序规则不符合要求,你写的
film_id = 'Comedy'是布尔值判断,无法实现按影片名字母顺序排序的需求,应该指定按title字段升序排列 - 额外添加了
limit 1限制,只会返回单条结果,不符合列出该分类下所有影片的要求
修正后的SQL如下:
SELECT title FROM film JOIN film_category USING (film_id) JOIN category USING (category_id) WHERE category.name = 'Comedy' ORDER BY title ASC;
执行后会返回所有喜剧分类的影片,且按照片名首字母顺序排列,输出字段为title,和示例格式完全一致。
内容的提问来源于stack exchange,提问作者N M
相关产品推荐
相关产品推荐

