【发布时间】:2013-02-25 13:54:38
【问题描述】:
我在 MSACCESS 2003 中遇到以下问题
我有一个名为 A_Gravur 的查询,它包含 3 列 SP1、SP2、SP3
现在我想搜索重复项。
查询 A_Gravur:
SP1 | SP2 | SP3
64 | CB75000 | 3
64 |空| D
70 | CB70010 | 1
70 | CB70010 | 1
119 | CB70050 | 5
119 |空| D
165 | S15002 |夏尔特
165 | S15002 |夏尔特
194 | R70034 |波蒂
194 | R10023 |电位器
196 | S10063 |夏尔特
196 | S10063 |夏尔特
197 | S10063 |夏尔特
198 | S10070 | 3
199 | CB75000 | 5
首先:从 A_Gravur 过滤 SP1 中的重复项
结果:
SP1 | SP2 | SP3
64 | CB75000 | 3
64 |空| D
70 | CB70010 | 1
70 | CB70010 | 1
119 | CB70050 | 5
119 |空| D
165 | S15002 |夏尔特
165 | S15002 |夏尔特
194 | R70034 |波蒂
194 | R10023 |电位器
196 | S10063 |夏尔特
196 | S10063 |夏尔特
在第一次重复搜索结果太多了!它应该像这样过滤: 过滤器(如果 SP3 中的一个结果是字母 D,则不显示) Filter (IF [SP1 and SP2] = [SP1 and SP2 from next record] then don't show it
第二:从 A_Gravur 过滤 SP2 中的重复项
SP1 | SP2 | SP3
64 | CB75000 | 3
199 | CB75000 | 5
196 | S10063 |夏尔特
196 | S10063 |夏尔特
197 | S10063 |夏尔特
我的最终结果应该是这样的 它是带有过滤器的 SP1 重复搜索 + SP2 重复搜索的结果
SP1 | SP2 | SP3
194 | R70034 |波蒂 470k
194 | R10023 |电位器
196 | S10063 |夏尔特
197 | S10063 |夏尔特
64 | CB75000 | 3
199 | CB75000 | 5
知道如何解决我的问题吗? 函数还是 sql 查询?
【问题讨论】:
-
我正在尝试解决您的问题,但是您的测试数据存在一些问题。如果我理解正确,最终输出中应该有两行以 70 开头,并且不应该出现以 199 开头的行。如果两行相同,比如以 196 开头的行,你想要输出两行还是一份可以?
-
您好,非常感谢您的帮助。 64 和 199 在 sp2 列中相同,应该出现,因为它们在 sp1 中不同。还有两条线 194,因为它们在 sp2 中不同。它也应该出现在 196 和 197 的两行之一,因为它们在 sp1 中是不同的。抱歉,我在最终输出中犯了一个错误。我会改正的
-
我需要输出两行,因为最终用户必须搜索错误
-
你说应该出现 64,但是第二行 64 在 SP3 中有 D...好吧,我明白了,你测试字段 SP1 或 SP2 重复...它变得更复杂:- (
-
hmm 抱歉,我用平板电脑写了这篇文章,如果 SP3 中有 D,那么 SP2 中什么都没有。因此,如果对 SP2 进行重复检查,则应该只有 2 个结果
标签: sql vba ms-access-2003