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

如何仅查询讲师列表?SQL语句返回全部门数据问题求助

解决方法

你的问题出在没有用WHERE子句过滤行,当前代码只是通过CASE语句给符合条件的行添加标记,但不会剔除其他部门的记录,所以会返回所有数据。

要只查询讲师列表,直接在SQL末尾加上WHERE条件过滤部门即可:

场景1:只保留薪资≥50000的讲师

select first_name, salary, dept, 'Lecturers' as "Lecturer List"
from friend
where dept = 'Lecturer' and salary >= 50000;

这里因为已经通过WHERE筛选了讲师且薪资达标,所以"Lecturer List"列可以直接固定为'Lecturers',不需要CASE判断。

场景2:保留所有讲师,按薪资区分标记

如果想展示所有讲师,同时用CASE标记薪资是否达标,可以这样写:

select first_name, salary, dept,  
    case when salary >= 50000 then '高薪讲师' else '普通讲师' end as "Lecturer List"
from friend
where dept = 'Lecturer';

此时WHERE子句确保只返回讲师部门的记录,CASE仅用来区分薪资等级。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.21 21:39:21