求MS Access查询语句:提取同一地址ID对应不同客户名的记录
MS Access 查询提取同一地址ID下的多客户记录
要提取所有对应多个不同客户名称的地址ID的记录,可以通过两步筛选实现:
- 先定位存在多客户的地址ID
- 关联原表提取这些地址ID的所有记录
最终查询语句
将下面的YourTableName替换为你的实际表名:
SELECT t.[Address ID], t.[Customer Name] FROM YourTableName t INNER JOIN ( -- 子查询:找出有多个不同客户名称的地址ID SELECT [Address ID] FROM YourTableName GROUP BY [Address ID] HAVING COUNT(DISTINCT [Customer Name]) > 1 ) sub ON t.[Address ID] = sub.[Address ID] ORDER BY t.[Address ID], t.[Customer Name];
语句说明
- 子查询通过
GROUP BY [Address ID]分组,用COUNT(DISTINCT [Customer Name]) > 1筛选出对应客户名称不唯一的地址ID - 主查询通过
INNER JOIN关联原表,只保留这些地址ID的所有记录 ORDER BY让结果按地址ID和客户名称排序,便于查看同一地址下的不同客户
内容的提问来源于stack exchange,提问作者yogesh sk
相关产品推荐
相关产品推荐

