MySQL Union语句和计数
我试图计算同一标题出现的次数 我的代码MySQL Union语句和计数,mysql,Mysql,我试图计算同一标题出现的次数 我的代码 SELECT client AS Client, datescanned as "Date Scanned", scanner AS Scanner, risk AS Risk, host AS Host, name AS Title, solution AS Solution FROM sss1webapp_latest WHERE risk regexp "Critical|High" AND client = "myself" gro
SELECT
client AS Client,
datescanned as "Date Scanned",
scanner AS Scanner,
risk AS Risk,
host AS Host,
name AS Title,
solution AS Solution
FROM sss1webapp_latest
WHERE risk regexp "Critical|High"
AND client = "myself"
group by Title;
UNION
SELECT
client AS Client,
datescanned as "Date Scanned",
scanner AS Scanner,
AttackScore AS Risk,
WebSite AS Host,
AttackType AS Title,
Recommendation AS Solution
FROM sss2webapp_latest
WHERE AttackScore regexp "5-Critical|4-High"
AND client = "myself"
我的表只是一个表示,没有添加所有字段
client datescanned title ....
myself 2019-03-11 Backported Security Patch
myself 2019-03-11 Backported Security Patch
myself 2019-03-11 Backported Security Patch Detection (SSH)
myself 2019-03-11 Backported Security Patch Detection (SSH)
myself 2019-03-11 Backported Security Patch Detection (SSH)
myself 2019-03-11 Backported Security Patch Detection (SSH)
myself 2019-03-11 SSL Version Issues
我的期望输出
count client datescanned title
2 myself 2019-03-11 Backported Security Patch
4 myself 2019-03-11 Backported Security Patch Detection (SSH)
1 myself 2019-03-11 SSL Version Issues
添加计数和分组相同的标题,并计数出现的次数
尝试在select语句后添加count0as tcount,但出现错误
欢迎反馈!
谢谢!纳塔莉
select count(*) as count, client, datescanned, title, risk AS Risk
from sss1webapp_latest
where risk regexp "Critical|High" AND client = "myself" group by title
union
select count(*) as count, client, datescanned, title, AttackScore AS Risk
from sss2webapp_latest
where AttackScore regexp "5-Critical|4-High" AND client = "myself" group by title
您可以选择其他列,但列号应相同,并且union的名称也应相同我认为我能够使用count*和sum*的组合实现所需的结果。您可能应该使用ALL作为联合,而不是联合,因为我们希望统计重复记录。查看此db小提琴: 您可能需要通过添加额外的列和where子句来稍微调整查询
我从另一个答案中总结出这个想法:您的第一个select语句上有一个额外的分号按标题分组;我试过了。。如果我在一个没有并集的语句中添加count作为count,就可以了。然而,只要我加上几个计数,我就得到了无法计算0在并集中的位置选择count0作为计数;客户作为客户,扫描日期作为扫描日期。。。。。。。。