使用 Microsoft 登录
登录或创建帐户。
你好,
使用其他帐户。
你有多个帐户
选择要登录的帐户。

Microsoft Access 数据库引擎 SQL 通常符合 ANSI -89 级别 1。 但是,某些 ANSI SQL 功能未在 Microsoft Access SQL 中实现。 此外,Microsoft Access SQL 包含 ANSI SQL 不支持的保留字和功能。

主要差异

  • Microsoft Access SQL 和 ANSI SQL 各具有不同的保留字和数据类型。 使用 Microsoft OLE DB 提供程序时,还有其他保留字。

  • 不同的规则适用于 Between...构造 ,其语法如下:

    expr1 [NOT] 介于 value1 value2 之间

    在 Microsoft Access SQL 中, value1 可以大于 value2;在 ANSI SQL 中, value1 必须等于或小于 value2。

  • Microsoft Access SQL 支持 ANSI SQL 通配符和特定于 Microsoft Access 的 通配符 以用于 Like 运算符。 ANSI 和 Microsoft Access 通配符的使用是相互排斥的。 必须使用一个集或另一个集,并且不能混合它们。 仅当使用 Microsoft Access 数据库引擎和 Microsoft Access OLE DB 提供程序时,ANSI SQL 通配符才可用。 如果尝试通过 Access 或 DAO 使用 ANSI SQL 通配符,它们将被解释为文本。

    匹配字符

    Microsoft Access SQL

    ANSI SQL

    任何单字符

    ?

    _ (下划线)

    零个或多个字符

    *

    %

  • Microsoft Access SQL 的限制通常较少。 例如,它允许对表达式进行分组和排序。

  • Microsoft Access SQL 支持更强大的表达式。

Microsoft Access SQL 的增强功能

Microsoft Access SQL 提供以下增强功能:

TRANSFORM 语句,它支持交叉表查询。

  • 其他 SQL 聚合函数 ,例如 StDevVarP

用于定义参数查询的 PARAMETERS 声明。

Microsoft Access SQL 不支持 ANSI SQL 功能

Microsoft Access SQL 不支持以下 ANSI SQL 功能:

  • DISTINCT 聚合函数引用。 例如,Microsoft Access SQL 不允许 SUM (DISTINCT 列名) 。

  • LIMIT TO nn ROWS 子句用于限制查询返回的行数。 只能使用 WHERE 子句 来限制查询的范围。

需要更多帮助?

需要更多选项?

了解订阅权益、浏览培训课程、了解如何保护设备等。

社区可帮助你提出和回答问题、提供反馈,并听取经验丰富专家的意见。

此信息是否有帮助?

你对语言质量的满意程度如何?
哪些因素影响了你的体验?
按“提交”即表示你的反馈将用于改进 Microsoft 产品和服务。 你的 IT 管理员将能够收集此数据。 隐私声明。

谢谢您的反馈!

×