获取聚合函数的sql server比较结果
我有这个疑问获取聚合函数的sql server比较结果,sql,sql-server,Sql,Sql Server,我有这个疑问 select max(start_time), min(end_time) from table t where max(start_time) < min(end_time) 选择最大值(开始时间),最小值(结束时间) 根据表t,其中最大值(开始时间)
select max(start_time), min(end_time)
from table t where max(start_time) < min(end_time)
选择最大值(开始时间),最小值(结束时间)
根据表t,其中最大值(开始时间)<最小值(结束时间)
where子句中不允许使用聚合函数
我将如何比较这个只有聚合函数将只生成2个数字,因此如果第一个大于第二个,当然你不会看到任何记录。您必须添加一个groupby
字段,以使逻辑工作。例如
select somefield, max(start_time), min(end_time)
from table
group by somefield
having max(start_time) < min(end_time)
选择一些字段,最大值(开始时间),最小值(结束时间)
从桌子上
按somefield分组
最大(开始时间)小于最小(结束时间)
演示:使用having
子句,正如我在对上一个问题的评论中提到的。逻辑错误,它不显示任何记录