Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/sql-server/25.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Sql 获取查询结果集返回的行数,但不包含ROWCOUNT_Sql_Sql Server_Tsql_Join_Count - Fatal编程技术网

Sql 获取查询结果集返回的行数,但不包含ROWCOUNT

Sql 获取查询结果集返回的行数,但不包含ROWCOUNT,sql,sql-server,tsql,join,count,Sql,Sql Server,Tsql,Join,Count,我有我下面的查询,这将给我的雇员ID和次数,他已经登录到一个应用程序 SELECT E.[EmployeeId], COUNT(*) LoginCount FROM tblEmployee E JOIN tblAccessLog AL ON E.EmployeeId = AL.EmployeeId WHERE AL.[AccessType] = 212 GROUP BY E.[EmployeeId] 我想让那些登录超过特定阈值的员工,让我拿100 SELECT E.[EmployeeId],

我有我下面的查询,这将给我的雇员ID和次数,他已经登录到一个应用程序

SELECT E.[EmployeeId], COUNT(*) LoginCount
FROM tblEmployee E
JOIN tblAccessLog AL ON E.EmployeeId = AL.EmployeeId
WHERE AL.[AccessType] = 212
GROUP BY E.[EmployeeId]
我想让那些登录超过特定阈值的员工,让我拿100

SELECT E.[EmployeeId], COUNT(*) LoginCount
FROM tblEmployee E
JOIN tblAccessLog AL ON E.EmployeeId = AL.EmployeeId
WHERE AL.[AccessType] = 212
GROUP BY E.[EmployeeId]
HAVING COUNT(*) > 100
现在我想得到上面查询返回的计数,我指的是访问我的站点超过100次的员工计数


我尝试了
@@ROWCOUNT
,它返回了用户数,但返回了2个结果集,我正在寻找是否有更好的方法代替使用
@@ROWCOUNT

只需将当前查询用作子查询即可

SELECT COUNT(*)
FROM (
    SELECT E.[EmployeeId], COUNT(*) LoginCount
    FROM tblEmployee E
    JOIN tblAccessLog AL ON E.EmployeeId = AL.EmployeeId
    WHERE AL.[AccessType] = 212
    GROUP BY E.[EmployeeId]
    HAVING COUNT(*) > 100
) X

使用带窗口的
计数

Select E.[EmployeeId], COUNT(*) LoginCount, COUNT(*) OVER() AS cnt_of_Employee
FROM tblEmployee E
JOIN tblAccessLog AL ON E.EmployeeId = AL.EmployeeId
WHERE AL.[AccessType] = 212
GROUP BY E.[EmployeeId]
HAVING COUNT(*) > 100