Orf*_*vre 3 sql-server subquery sql-server-2014
我无法解决这个问题,如何让子查询为每个讲师返回最低的课程权重,它目前只返回最低的,我的子查询是错误的还是外部查询?
问题:显示每位讲师的最低课程作业权重,显示员工 ID、模块 ID 和所选的权重。
SELECT m1.ModuleID, m1.CWWeight, l.StaffID
FROM dbo.module as m1
INNER JOIN dbo.Lecturer as l
ON m1.ModuleConvenor = l.StaffID
WHERE m1.CWWeight = (SELECT MIN(m2.CWWeight)
FROM dbo.Module as m2)
Run Code Online (Sandbox Code Playgroud)
有很多方法可以做到这一点。这是一个只会稍微改变您的尝试的方法:
SELECT m1.ModuleID, m1.CWWeight, l.StaffID
FROM dbo.module as m1
INNER JOIN dbo.Lecturer as l
ON m1.ModuleConvenor = l.StaffID
WHERE m1.CWWeight = (SELECT MIN(m2.CWWeight)
FROM dbo.Module as m2
WHERE m2.ModuleConvenor = l.StaffID) ;
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
65 次 |
最近记录: |