我想比较2列,并标记不匹配的值
我有2个表,这些表来自不同的应用程序,我想访问比较2列(标签名称),并指出我唯一标签名称不匹配我想比较2列,并标记不匹配的值
在最好的情况下,不会有没有匹配的名称,因为两个名单应该是相同的。
但是,我想查看我的表格,因为我不想自己检查1000个名称。
访问是否可以标记或着色没有匹配的名称?
如果不是,那么对我来说,区分“不匹配”值的最好方法是什么?
在此先感谢!
编辑:
我使用的表称为
DB_Total
和
TagNames_EA
在 “DB_Total” 我有3列:
"Name"
"Address"
"Type"
在TagNames_EA
我只有列
"Name"
我想比较这两种是因为我想快速检查,看是否在EA值是正确的原因。
我使用的代码是:
SELECT DB_Total.Address, DB_Total.Name, DB_Total.Type
FROM DB_Total LEFT JOIN TagNames_EA ON DB_Total.[Name] = TagNames_EA.[Name]
WHERE (((TagNames_EA.Name) Is Null));
这不幸的是,只返回没有匹配的行。
我想访问以标记在我现有的表中没有匹配的行。这可能吗?
我的印象是你想看到从DB_Total所有行,包括计算字段,指示在TagNames_EA匹配的名称是否存在。
SELECT
d.Address,
d.Type,
d.Name,
IIf(t.Name Is Null, False, True) AS match_found
FROM
DB_Total AS d
LEFT JOIN TagNames_EA AS t
ON d.Name = t.Name;
如果你想与颜色匹配和不匹配的名称来区分,建立基于该查询窗体,并设置条件格式表达来呈现这些数据match_found。
非常感谢,作品像一个魅力! – Gutanoth 2013-02-20 07:40:43
我从阅读你的问题中得到的意义是,你知道DB_Total包含一个正确的名称列表,它可以用作参考列表。但是TagNames_EA可能包含或不包含正确的名称。换句话说,您希望看到来自TagNames_EA的所有名称在DB_Total中没有对应的名称:
select t.[Name] as TagNames_EA_Incorrect_Names
from TagNames_EA as t
left join DB_Total as d
on t.[Name] = d.[Name]
where d.[Name] is null
您应该在问题中包含表格的架构信息。知道,有人可能会给你一个SQL查询,可以回答你的问题。如果你也可以包含一些样本数据。 – 2013-02-20 06:57:47
这里缺少很多:表格模式,输入值,预期输出,实际输出和您当前拥有的代码。 – 2013-02-20 07:04:27
我添加了大部分可用的信息,我希望它足以让事情变得清晰! – Gutanoth 2013-02-20 07:22:13