我有一个包含客户信息(我们将其称为CustomerDB
)的SQL表,其中包括一个地址列。该表中的许多行具有完全重复的地址。该业务要求是从数据库中检索行这样的:每组最多N行
- 如果有更多的然后是三个完全相同,仅取三(忽略其他)
- 哪三个是不重要的;任何三个都会做(不一定是“前三个”)。
所以,如果我有一个数据集,像这样(我也entered this in the Data Explorer,使之易于测试针对查询):
ID NAME COMPANY ADDR1
16242 TOM E Company A 101 First RD
16241 RONALD J Company B 12 Tenth AVE
16235 KENNETH H 12 Tenth AVE
16238 MICHAEL H Company C 12 Tenth AVE
16243 ANTONIO D Company D 264 Long ST STE 5
16237 MICHAEL B Company E 264 Long ST STE 5
16234 WALTER L Company F 73 North RD
16236 CARL O Company G 73 North RD
16239 MICHAEL S Company H 73 North RD
16240 MICHAEL I Company I 73 North RD
我想获得所有的行除其中一个“73 North RD
”记录。我希望我在这里有所帮助。
我的思维在基于集合的操作中效果不好,所以我很困惑如何做到这一点。 我宁愿一个解决方案,为什么它的工作原因。因为我想成为“教之以渔”,可以这么说=)
附加信息:
ID
是一个int主键(自动增加)- 其他所有列是文字。
- 有时我会将这些数据集作为Access数据库,有时它们在SQL Server中。所以,我宁愿在这两个(即不使用
CROSS APPLY
或CTE
的)
这属于'[最大n组]类别(标签)。查看右侧** Related **标题下的链接。 –
@ypercube真棒,我正在寻找那些现在。谢谢! – jadarnel27