sql 获取分配给每个 id 的案例数
sql to get count of cases assigned to each id
我的 sql 输出应该是这样的,
AssignedTo Cases
Larry 3
Tom 1
Henry 1
我有 3 张桌子。关系
select
CASE
WHEN r.id = 30 THEN r.name
ELSE r.name
|| ' '
|| u.b_id
END
AS assignedto, count(*) as cases
from cases c, users u, roles r
where c.id = u.b_id and
c.assigned_to = u.id and
u.role_id = r.id
and c.b_id = 40
group by c.assigned_to;
你只需要一个简单的COUNT()
聚合
SELECT assigned_to, COUNT(*) AS cases
FROM tab
GROUP BY assigned_to
更新:
在这种情况下(为了包含来自另一个 table 的名称),使用带有 [INNER] JOIN
的 Select 语句:
SELECT u.name AS assignedto, COUNT(*) AS cases
FROM cases c
JOIN users u
ON u.id = c.assigned_to
GROUP BY u.name
Select 计数 ... 按 id 分组,assigned_to。
使用 COUNT 进行聚合,使用 GROUP BY 将聚合分配给一个组。
SELECT
assigned_to
COUNT(id) as cases
FROM
<your_table_name_here>
GROUP BY assigned_to
您可以使用函数COUNT
。
COUNT() 函数 returns 匹配指定条件的行数。 GROUP BY
子句将记录分组到汇总行中。
GROUP BY 语句通常与聚合函数(COUNT、MAX、MIN、SUM、AVG)一起使用,以按一列或多列对 result-set 进行分组。
Select AssignedTo, count (*) as cases from table group by AssignedTo
select id,sum(assigned_to) as Cases from s1 group by id;
id Cases
1 29232
2 7654
我的 sql 输出应该是这样的,
AssignedTo Cases
Larry 3
Tom 1
Henry 1
我有 3 张桌子。关系
select
CASE
WHEN r.id = 30 THEN r.name
ELSE r.name
|| ' '
|| u.b_id
END
AS assignedto, count(*) as cases
from cases c, users u, roles r
where c.id = u.b_id and
c.assigned_to = u.id and
u.role_id = r.id
and c.b_id = 40
group by c.assigned_to;
你只需要一个简单的COUNT()
聚合
SELECT assigned_to, COUNT(*) AS cases
FROM tab
GROUP BY assigned_to
更新:
在这种情况下(为了包含来自另一个 table 的名称),使用带有 [INNER] JOIN
的 Select 语句:
SELECT u.name AS assignedto, COUNT(*) AS cases
FROM cases c
JOIN users u
ON u.id = c.assigned_to
GROUP BY u.name
Select 计数 ... 按 id 分组,assigned_to。
使用 COUNT 进行聚合,使用 GROUP BY 将聚合分配给一个组。
SELECT
assigned_to
COUNT(id) as cases
FROM
<your_table_name_here>
GROUP BY assigned_to
您可以使用函数COUNT
。
COUNT() 函数 returns 匹配指定条件的行数。 GROUP BY
子句将记录分组到汇总行中。
GROUP BY 语句通常与聚合函数(COUNT、MAX、MIN、SUM、AVG)一起使用,以按一列或多列对 result-set 进行分组。
Select AssignedTo, count (*) as cases from table group by AssignedTo
select id,sum(assigned_to) as Cases from s1 group by id;
id Cases
1 29232
2 7654