得到一个结果sql server比较聚合函数的结果

时间:2013-12-27 14:52:47

标签: sql sql-server

我有这个查询

    select max(start_time), min(end_time)
    from table t where max(start_time) < min(end_time)

我在where子句

中不允许使用聚合函数

我将如何比较

1 个答案:

答案 0 :(得分:0)

拥有聚合函数只会产生2个数字,所以如果第一个大于第二个 - 当然你不会看到任何记录。您必须为group by逻辑添加having字段才能工作。 E.g。

select somefield, max(start_time), min(end_time)
from table
group by somefield
having max(start_time) < min(end_time)

演示:http://sqlfiddle.com/#!3/5b220/1