根据表值搜索完全匹配和部分匹配

时间:2019-10-11 12:09:14

标签: sql ms-access

我在访问中有两个表“ ITK”和“ Table1”,我正在ITK.itk中寻找Table1.itk值。如果两个值都匹配,则结果应从ITK.itk中提取值并显示“匹配”,否则,应从ITK.itk中搜索并匹配相似的值(多象素结果)。

这是我编写的代码,它没有提取任何结果,而且我不确定自己在做什么错误或者什至可以访问。

SELECT Table1.product, Table1.itk, ITK.itk
FROM Table1 LEFT JOIN
     ITK
     ON Table1.itk = ITK.itk
WHERE (((ITK.itk) Like "*[Table1].[itk]"));

1 个答案:

答案 0 :(得分:1)

您当前的代码不太可能返回任何结果,因为仅当字段ITK.itk以文字字符串"[Table1].[itk]"结尾时才返回记录(请注意,使用不是 [Table1].[itk]字段的

假设我已正确理解您要实现的目标,则以下代码可能会按要求执行:

select 
    table1.product, 
    table1.itk, 
    itk.itk, 
    iif(table1.itk=itk.itk,"Match","Partial Match") as matchtype
from 
    table1 inner join itk on itk.itk like "*" & table1.itk