Tsql SQL Server查询返回表中的所有行,而不是MAX()
我试图返回库存中每件设备的最高/最后一小时的仪表读数,但是,下面的查询列出了所有实例,即使使用MAXTsql SQL Server查询返回表中的所有行,而不是MAX(),tsql,sql-server-2005,max,Tsql,Sql Server 2005,Max,我试图返回库存中每件设备的最高/最后一小时的仪表读数,但是,下面的查询列出了所有实例,即使使用MAX select sil.[Posting Date], mre.[Service Item No_], sil.[Job Code], max(mre.[Reading]) as 'Hour Reading' from [$meter reading entry]mre left ou
select sil.[Posting Date],
mre.[Service Item No_],
sil.[Job Code],
max(mre.[Reading]) as 'Hour Reading'
from [$meter reading entry]mre left outer join
[$service invoice line]sil on mre.[Service Item No_] = sil.[Service Item No_]
where sil.[Job Code] = 200
group by mre.[Service Item No_], sil.[Job Code], mre.[Reading], sil.[Posting Date]
这是因为mre.[Reading]也在GROUPBY子句中使用。若要获得所需结果,请从组中删除mre。[读取],然后重试
select sil.[Posting Date],
mre.[Service Item No_],
sil.[Job Code],
max(mre.[Reading]) as 'Hour Reading'
from [$meter reading entry]mre left outer join
[$service invoice line]sil on mre.[Service Item No_] = sil.[Service Item No_]
where sil.[Job Code] = 200
group by mre.[Service Item No_], sil.[Job Code], sil.[Posting Date]
你的sil加入并没有真正起作用。当你取出连接,只使用主表时会发生什么?太好了。非常感谢你。