Sql 从表中选择多个max()
首先,我要说的是,表结构(不幸地)已经设置好了 我的目标是从查询中选择几个Sql 从表中选择多个max(),sql,sql-server-2008-r2,max,Sql,Sql Server 2008 R2,Max,首先,我要说的是,表结构(不幸地)已经设置好了 我的目标是从查询中选择几个max()。假设我有以下表格 jobReferenceTable jobList jobID | jobName | jobDepartment | listID | jobID | _______|__________|_______________| _______|_________| 1 | dishes
max()
。假设我有以下表格
jobReferenceTable jobList
jobID | jobName | jobDepartment | listID | jobID |
_______|__________|_______________| _______|_________|
1 | dishes | cleaning | 1 | 1 |
2 |vacumming | cleaning | 2 | 5 |
3 | mopping | cleaning | 3 | 2 |
4 |countMoney| admin | 4 | 4 |
5 | hirePpl | admin | 5 | 1 |
6 | 2 |
7 | 3 |
8 | 3 |
9 | 1 |
10 | 5 |
不知何故,我希望有一个从清理中选择作业ID的查询,然后显示每个作业的最新作业列表ID。我在下面开始了一个查询,下面是我希望得到的结果
质疑
结果
jobName | jobDepartment | listID |
________|_______________|________|
1 | cleaning | 9 |
2 | cleaning | 6 |
3 | cleaning | 8 |
试试这个
SELECT jrt.jobName, jrt.jobDepartment, MAX(jl.listID)
FROM jobReferenceTable AS jrt INNER JOIN jobList AS jl ON jrt.jobID = jl.jobID
WHERE jrt.jobDepartment = 'cleaning'
GROUP BY jrt.jobName, jrt.jobDepartment
据我所知,您只需要一个MAX()
,listID
MAX()
SELECT jrt.jobName, jrt.jobDepartment, MAX(jl.listID)
FROM jobReferenceTable AS jrt INNER JOIN jobList AS jl ON jrt.jobID = jl.jobID
WHERE jrt.jobDepartment = 'cleaning'
GROUP BY jrt.jobName, jrt.jobDepartment