MS Access查询以匹配列中的关键字

时间:2013-05-22 19:26:43

标签: ms-access ms-access-2007

我有一个关键词 Alpha sem1

但在我的数据库中存储为 MS1 2001090 Alpha sem1

当我使用 Alpha sem1 进行搜索时,我需要检查列中的给定关键字并需要将其返回

select * from Boilers where Orgin ALIKE '%Alpha sem1%'

上述查询无法检索记录。我怎么能实现这个

2 个答案:

答案 0 :(得分:1)

尝试使用

Like "*Alpha sem1*"

或者,如果它总是处于相同的位置,您可以使用MID函数来隔离关键字

答案 1 :(得分:1)

如果Orgin中记录的Boilers字段包含 MS1 2001090 Alpha sem1 ,则select * from Boilers where Orgin ALIKE '%Alpha sem1%'应返回该字段。无论查询是从Access应用程序会话内部还是外部运行,以及查询是在DAO还是ADO / OleDb下运行,都应该发生这种情况。

由于您没有获得该查询返回的任何行,我想知道 Alpha sem1 之间的字符。也许它类似于空格(ASCII 32),但实际上是其他一些字符。

查看将这些目标词分成两个条件时是否获得任何行。

SELECT *
FROM Boilers
WHERE
        Orgin ALike '%Alpha%'
    AND Orgin ALike '%sem1%'