使用AdventureWorks数据库,我需要生成一个职位列表列表以及分配给每个职位的员工数量。但这不是我的担忧。
当OrganizationLevel为2或更低时,我需要将Job Title字段大写。但是,我还需要一个条件,限制作业标题在3或以下时显示。你能帮我么?这是一次(不正确的)尝试 - 我知道这是错误的,我几乎放弃了,但我希望它能帮助解释我在这里想要实现的目标。
SELECT distinct JobTitle, count(JobTitle) as CountOf from HumanResources.Employee
WHERE (OrganizationLevel < 3)
GROUP BY JobTitle
ELSE IF (OrganizationLevel < 2) select distinct UPPER(JobTitle);
答案 0 :(得分:0)
SELECT
CASE
WHEN OrganizationLevel < 2 THEN JobTitle
ELSE UPPER(JobTitle)
END as JobTitle,
count(*) as CountOf
FROM HumanResources.Employee
WHERE OrganizationLevel < 3
GROUP BY
CASE
WHEN OrganizationLevel < 2 THEN JobTitle
ELSE UPPER(JobTitle)
END