基于条件的SQL选择
在我试图在MS Access 2016中创建以下查询的过程中,我曾试图对此进行思考,但似乎没有成功。 我的目标是完成以下任务:“列出每名拥有15年或以上经验的老虎队教练的姓名和总经验年数。” 下面是三个不同的表格:团队、教练、工作经验。 似乎给我带来最大问题的是计算教练的所有工作经验 查询的预期结果应产生: 教练姓名|年经验总数 亚当斯| 25基于条件的SQL选择,sql,ms-access,Sql,Ms Access,在我试图在MS Access 2016中创建以下查询的过程中,我曾试图对此进行思考,但似乎没有成功。 我的目标是完成以下任务:“列出每名拥有15年或以上经验的老虎队教练的姓名和总经验年数。” 下面是三个不同的表格:团队、教练、工作经验。 似乎给我带来最大问题的是计算教练的所有工作经验 查询的预期结果应产生: 教练姓名|年经验总数 亚当斯| 25 考虑一下: 问题1:SumExp 问题2: 一应俱全: 您需要包括所有的经验,无论从何处获得,但只查看老虎教练?这里的大多数人希望样本数据是格式化文
考虑一下: 问题1:SumExp 问题2: 一应俱全:
您需要包括所有的经验,无论从何处获得,但只查看老虎教练?这里的大多数人希望样本数据是格式化文本,而不是图像。别忘了指定预期的结果。你试过什么?显示您当前的查询尝试。谢谢!我的问题是,我试图在查询2中使用查询1(SumExp)中的代码,而我将它们反过来使用。
SELECT Sum(WorkExperience.WEXP_Yrs) AS SumOfWEXP_Yrs, WorkExperience.CoachNum
FROM WorkExperience
GROUP BY WorkExperience.CoachNum;
SELECT WorkExperience.TeamNum, Coach.CoachName, SumExp.SumOfWEXP_Yrs
FROM
Coach INNER JOIN
(
SumExp INNER JOIN
(
Team INNER JOIN WorkExperience
ON Team.TeamNum = WorkExperience.TeamNum
)
ON SumExp.CoachNum = WorkExperience.CoachNum
)
ON Coach.CoachNum = SumExp.CoachNum
WHERE
WorkExperience.TeamNum = 24;
SELECT WorkExperience.TeamNum, Coach.CoachName, SumExp.SumOfWEXP_Yrs
FROM
Coach INNER JOIN
(
(
SELECT Sum(WorkExperience.WEXP_Yrs) AS SumOfWEXP_Yrs, WorkExperience.CoachNum
FROM WorkExperience
GROUP BY WorkExperience.CoachNum
) AS SumExp
INNER JOIN
(
Team INNER JOIN WorkExperience
ON Team.TeamNum = WorkExperience.TeamNum
)
ON SumExp.CoachNum = WorkExperience.CoachNum
)
ON Coach.CoachNum = SumExp.CoachNum
WHERE
WorkExperience.TeamNum = 24;