通配符是特殊字符,可以代表文本值中的未知字符,并且可以方便地查找具有相似但不相同的数据的多个项目.通配符还可以帮助获取指定模式匹配的数据库.
Access支持两组通配符,因为它支持两种结构化查询语言标准.
ANSI-89
ANSI-92
通常,当您对Access数据库(例如 *.mdb 查询和查找并替换操作时,使用ANSI-89通配符>和 * .accdb 文件.
在对Access项目运行查询时使用ANSI-92通配符 - 访问连接到Microsoft SQL Server数据库的文件. Access项目使用ANSI-92标准,因为SQL Server使用该标准.
下表列出了支持的字符ANSI-89 :
Character | 描述 | 示例 |
---|---|---|
* | 匹配任意数量的字符.您可以在字符串中的任何位置使用星号(*). | wh * 找到什么,白色和为什么,但不是一段时间或观看. |
? | 匹配任何单个字母字符. | B?ll 找到球,钟和账单. |
[] | 匹配括号内的任何单个字符. | B [ae] ll 找到球和钟,但不是账单. |
! | 匹配括号内没有的任何字符. | b [!ae] ll 发现票据和公牛,但不是球或钟. |
- | 匹配一系列字符中的任何一个.您必须按升序指定范围(A到Z,而不是Z到A). | b [ac] d 找到坏,bbd和bcd. |
# | 匹配任何单个数字字符. | 1#3S 找到103,113和123. |
下表列出了ANSI-92支持的字符 :
字符 | Description | 示例 |
---|---|---|
% | 匹配任意数量的字符.它可以用作字符串中的第一个或最后一个字符. | wh%找到什么,白色和为什么,但不是一段时间或观察. |
_ | 匹配任何单个字母字符. | B_ll 查找球,钟和账单. |
[] | 匹配括号内的任何单个字符. | B [ae] ll 找到球和钟,但不是账单. |
^ ^ | 匹配括号内没有的任何字符. | b [^ ae] ll 找到票据和公牛,但不是球或钟. |
- | 匹配一系列字符中的任何一个.您必须按升序指定范围(A到Z,而不是Z到A). | b [ac] d 找到坏,bbd和bcd. |
现在让我们看一个使用这些的简单示例打开查询设计的通配符.
添加突出显示的表并关闭显示表对话框.
在查询网格中添加要作为查询结果查看的字段.
运行查询.
让我们再次转到查询设计并添加提示项目名称.
现在运行您的查询并让我们假设你不知道确切的公关提示名称,但您知道项目名称包含"药水"字样.点击确定.
上面的步骤不会产生任何结果.这是因为Access正在项目名称字段中寻找完全匹配.它正在寻找名称中包含药水字样的项目.
如果您需要它以便用户可以输入通配符来替换未知字符,那么你需要调整标准并包括运算符如.
运行查询时,用户可以使用通配符替换任意数量的字符.
我们假设你知道单词 potion 出现在标题的某个地方,但你并不确定在哪里.
您可以添加*来替换单词药水之前的任意数量的字符,然后在之后添加另一个*.点击确定.
用户总是知道他们可以进入的通配符.但有些用户可能不知道他们能够进入的通配符.在这种情况下,您可以自己输入通配符.
在这种情况下,在 Like 运算符和参数提示符之间,我们可以添加这些通配符和现在我们有一个非常具体的方式来写这个.在引号中的之后之后,输入我们正在使用的通配符.在这种情况下,我们使用"*"来替换任意数量的字符.我们现在将其添加到参数中.为此,我们需要符号&b(&)符号和空格.我们现在将重复此步骤并添加另一个&符号(&),因为我们将该通配符加入到用户为该项目名称输入的任何条件,然后在引号中输入"*".
现在让我们再次运行查询.在没有任何通配符的提示中输入单词药水.
查询现在将跟踪这里输入的任何一侧的通配符.我们需要简单输入药水并按回车键.
我们现在得到了我们正在寻找的结果,无论用户输入什么,结果都是一样的.
让我们说我们想找到每个带有"the"字样的项目标题.然后,您只需键入单词并输入或单击确定.
使用此查询,可以更轻松地搜索名称中带有"the"一词的项目. 2 nd 级别的结果还可能包含带有"mother"一词的项目名称,其中"the"是该单词的一部分.