如何在Google Sheets中按姓名统计唯一Lead ID数量?
需求:按姓名统计唯一Lead ID数量
原始数据集
包含重复Lead ID的数据集结构如下:
| Column A | Column E | Column I |
|---|---|---|
| Lead ID | Date | Name |
| 1 | 6/1/2023 | Adam |
| 1 | 6/1/2023 | Adam |
| 2 | 6/1/2023 | Adam |
| 2 | 6/3/2023 | Adam |
| 3 | 6/3/2023 | Bob |
| 4 | 6/3/2023 | Bob |
| 5 | 6/3/2023 | Jill |
| 5 | 6/3/2023 | Jill |
当前使用的QUERY公式
=QUERY(RAW!A:Z, "select I, count(A) where E >= date '"&TEXT(DATEVALUE("6/1/2023"),"yyyy-mm-dd")&"' and E <= date '"&TEXT(DATEVALUE("6/30/2023"),"yyyy-mm-dd")&"' group by I", 1)
当前返回结果
该公式统计的是所有Lead ID(含重复)的数量:
| Name | Count Lead ID |
|---|---|
| Adam | 4 |
| Bob | 2 |
| Jill | 2 |
期望结果
需要按姓名统计唯一Lead ID的数量:
| Name | Count Lead ID |
|---|---|
| Adam | 2 |
| Bob | 2 |
| Jill | 1 |
问题原因
Google Sheets的QUERY函数不支持count(distinct A)语法,直接使用会触发错误。
解决方案
通过嵌套QUERY和UNIQUE函数实现先去重再统计:
=QUERY( UNIQUE( QUERY(RAW!A:Z, "select A,I where E >= date '"&TEXT(DATEVALUE("6/1/2023"),"yyyy-mm-dd")&"' and E <= date '"&TEXT(DATEVALUE("6/30/2023"),"yyyy-mm-dd")&"'", 1 ) ), "select Col2, count(Col1) group by Col2 label Col2 'Name', count(Col1) 'Count Lead ID'", 1 )
公式说明
- 内层QUERY:筛选出日期范围内的Lead ID(A列)和姓名(I列)数据,只保留需要的两列
- UNIQUE函数:去除
Lead ID+姓名的重复组合,确保每个Lead ID对应姓名只留一条记录 - 外层QUERY:对去重后的姓名分组,统计每组对应的唯一Lead ID数量,并设置表头标签
内容的提问来源于stack exchange,提问作者OwlKnowledge
相关产品推荐
相关产品推荐

