SQL Server:如何在WHERE子句中使用像MAX这样的聚合函数 [英] Sql Server : How to use an aggregate function like MAX in a WHERE clause
本文介绍了SQL Server:如何在WHERE子句中使用像MAX这样的聚合函数的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我想获得该记录的最大值。请帮助我:
I want get the maximum value for this record. Please help me:
SELECT rest.field1
FROM mastertable AS m
INNER JOIN (
SELECT t1.field1 field1,
t2.field2
FROM table1 AS T1
INNER JOIN table2 AS t2 ON t2.field = t1.field
WHERE t1.field3=MAX(t1.field3)
-- ^^^^^^^^^^^^^^ Help me here.
) AS rest ON rest.field1 = m.field
推荐答案
您可以使用子查询...
You could use a sub query...
WHERE t1.field3 = (SELECT MAX(st1.field3) FROM table1 AS st1)
但是我实际上会将其移出where子句,并移到join语句中,作为ON子句的AND。
But I would actually move this out of the where clause and into the join statement, as an AND for the ON clause.
这篇关于SQL Server:如何在WHERE子句中使用像MAX这样的聚合函数的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文