sql – 在时间之间查找数据库中的同时事件

我有一个数据库存储电话记录.每个电话记录具有开始时间和结束时间.我想知道同时发生的最大电话数量是多少,以了解我们的电话银行是否超过了可用的电话线路数量.我如何解决这个问题呢?

解决方法

考虑到最大连接数将成为StartTime点的事实,您可以
SELECT TOP 1 count(*) as CountSimultaneous
FROM PhoneCalls T1,PhoneCalls T2
WHERE
     T1.StartTime between T2.StartTime and T2.EndTime
GROUP BY
     T1.CallID
ORDER BY CountSimultaneous DESC

查询将为每个呼叫返回同时呼叫的次数.可以从下列命令中选择第一个或SELECT MAX(CountSimultaneous)(作为没有排序的子查询,而不是TOP).

相关文章

SELECT a.*,b.dp_name,c.pa_name,fm_name=(CASE WHEN a.fm_n...
if not exists(select name from syscolumns where name=&am...
select a.*,pano=a.pa_no,b.pa_name,f.dp_name,e.fw_state_n...
要在 SQL Server 2019 中设置定时自动重启,可以使用 Window...
您收到的错误消息表明数据库 'EastRiver' 的...
首先我需要查询出需要使用SQL Server Profiler跟踪的数据库标...