Cookie与Domain一对多关联下的分类覆盖统计及展示需求
需求说明
基于cookie details表实现以下统计逻辑:
- 仅处理
displayGroupName(变更后分类)与defaultCategory(默认分类)不一致的记录 - 按Cookie名称、原始分类、覆盖后分类分组,统计两个核心指标:
- OverrideCount:该分类覆盖发生的总次数(每个Domain的一次变更记为1次)
- DomainCount:涉及该分类覆盖的唯一Domain总数
SQL统计查询
通过分组查询直接获取统计结果:
SELECT cookiename AS CookieName, defaultcategory AS OriginalCategory, displayGroupName AS OverriddenCategory, COUNT(*) AS OverrideCount, COUNT(DISTINCT host) AS DomainCount FROM cookie_details WHERE displayGroupName != defaultcategory GROUP BY cookiename, defaultcategory, displayGroupName ORDER BY cookiename, OverrideCount DESC;
C#实体类定义
对应统计结果的实体类,同时附上原始Cookie详情实体供参考:
// 原始Cookie详情实体(对应数据库表结构) public class CookieDetail { public string CookieName { get; set; } public string Host { get; set; } public string DefaultCategory { get; set; } public string DisplayGroupName { get; set; } } // 统计后的Cookie分类覆盖信息实体 public class CookieOverrideStats { public string CookieName { get; set; } public string OriginalCategory { get; set; } public string OverriddenCategory { get; set; } public int OverrideCount { get; set; } public int DomainCount { get; set; } }
示例统计结果
| CookieName | OriginalCategory | OverriddenCategory | OverrideCount | DomainCount |
|---|---|---|---|---|
| _ga | Analytics and Performance | strictly necessary | 3 | 2 |
| _fbp | Marketing and Advertising | Analytics and Performance | 2 | 2 |
内容的提问来源于stack exchange,提问作者Sumeet Bhati
相关产品推荐
相关产品推荐

