在 Access 的查询和参数中使用通配符

应用对象
Microsoft 365 专属 Access Access 2024 Access 2021 Access 2019 Access 2016

匹配数据中任意位置的所有字符

  1. 在“设计”视图中打开查询。 在 导航窗格“查询”下,右键单击查询,然后选择“ 设计视图”。

  2. 在要使用的字段下的 “条件” 单元格中,在条件的一侧或两侧添加星号。 例如:

    • *owner*
    • owner*
    • *owner
  3. “查询设计 ”选项卡的 “结果 ”组中,单击 “运行”

    “运行”按钮

匹配模式中的字符

  1. 在“设计”视图中打开查询。
  2. 在要使用的字段 的“条件” 单元格中,在条件之前键入 Like 运算符。
  3. 使用通配符在条件中替换一个或多个字符。 例如, Like "R?308021" 返回 RA308021RB308021和类似值。
  4. “查询设计 ”选项卡的 “结果 ”组中,单击 “运行”

检索从 A 到 H 的公司列表

  1. 在“设计”视图中打开查询。
  2. 在要使用的字段 的“条件” 单元格中,输入 Like,后跟一对双引号。 例如: Like ""
  3. 在双引号中,添加一对方括号和您要查找的字符范围,如下所示: Like "[a-h]"
  4. 可以在括号外使用通配符。 例如: Like "[a-h]*"

通配符表

下表列出并介绍了可在 Access 查询中使用的通配符。

符号 说明 示例
* 匹配零个或多个字符。 可将其用作字符串中的第一个或最后一个字符。 wh* 查找 whwhatwhitewhy
? 匹配任意单个字母字符。 b?ll 查找 ballbellbill
[ ] 匹配括号中的任意单个字符。 b[ae]ll可以找到,ballbell但不能bill
! 匹配括号中不包含的任意字符。 b[!ae]ll查找和bull但不查找ballbillbell
- 匹配字符范围中的任意一个字符。 必须按升序指定范围, (AZ,而不是 ZA) 。 b[a-c]d 查找 badbbdbcd
# 匹配任意单个数字字符。 1#3 查找 103113123

通配符使用示例

场景 示例
你的数据将一些人列为 owner ,将其他人列为 owner/operator. Like "owner*"Like "*owner*"
要将通配符与参数查询配合使用。 Like "*" & [parameter] & "*";例如, Like "*" & [fish] & "*" 返回所有包含 fish(例如 fish & chipsrockfish和 的过程) 。
有人在输入数据时拼写错误了名称,例如 Adrien instead of Adrian. Like "Adri?n"
例如,要查找姓氏以 开H头的A客户 ,例如,对于批量邮件。 Like "[a-h]*"
要查找除第二位和第三位外都相同的部件号。 Like "R??083930"
你希望发送在公园街 1000 号街区举行的街区派对邀请。 Like "1### Park Street"

用于从数据检索通配符的语法

字符 所需语法
星号 * [*]
问号 ? [?]
数字符号 # [#]
连字符 - [-]
一组左括号和右括号在一起 [] [[]]
左括号 [ [[]
右括号 ] 无需特殊处理
感叹号 ! 无需特殊处理

了解要使用的通配符集

Access 数据库引擎 (ANSI-89) 与 SQL Server (ANSI-92)

ANSI-89 描述传统的 Access SQL 语法,这是 Access 数据库的默认语法。 通配符遵循 Microsoft Visual Basic for Applications (VBA) 规范,而不是 SQL。

希望语法与 Microsoft SQL Server 数据库兼容时,使用 ANSI-92。

建议不要在同一个数据库中混合使用两种类型的通配符。

与 Access 数据库引擎 (ANSI-89) 配合使用的通配符

在为 Access 数据库创建的查询中使用以下通配符。

符号 说明 示例
* 匹配任意字符数。 可将其用作字符串中的第一个或最后一个字符。 wh* 查找 whatwhitewhy
? 匹配任意单个字母字符。 B?ll 查找 ballbellbill
[ ] 匹配括号中的任意单个字符。 B[ae]ll可以找到,ballbell但不能bill
! 匹配括号中不包含的任意字符。 b[!ae]ll查找和bull但不查找ballbillbell
- 匹配字符范围中的任意一个字符。 必须按升序指定范围, (AZ,而不是 ZA) 。 b[a-c]d 查找 badbbdbcd
# 匹配任意单个数字字符。 1#3 查找 103113123

与 SQL Server (ANSI-92) 配合使用的通配符

在为与 Microsoft SQL Server 数据库一起使用而创建的查询中使用这些通配符。

符号 说明 示例
% 匹配任意字符数。 可将其用作字符串中的第一个或最后一个字符。 wh% 查找 whatwhitewhy
_ 匹配任意单个字母字符。 B_ll 查找 ballbellbill
[ ] 匹配括号中的任意单个字符。 B[ae]ll可以找到,ballbell但不能bill
^ 匹配括号中不包含的任意字符。 b[^ae]ll查找和bull但不查找ballbillbell
- 匹配字符范围中的任意一个字符。 必须按升序指定范围, (AZ,而不是 ZA) 。 b[a-c]d 查找 badbbdbcd

另请参阅