比較 Microsoft Access SQL 和 ANSI SQL

附註:  我們想要以您的語言,用最快的速度為您提供最新的說明內容。 本頁面是經由自動翻譯而成,因此文中可能有文法錯誤或不準確之處。讓這些內容對您有所幫助是我們的目的。希望您能在本頁底部告訴我們這項資訊是否有幫助。 此為 英文文章 出處,以供參考。

Microsoft Access 資料庫引擎 SQL 通常是 ANSI-89 相容的階層 1。不過,Microsoft Access SQL 並未實作特定的 ANSI SQL 功能。此外,Microsoft Access SQL 所包含的保留的字與 ANSI SQL 中不支援的功能。

主要差異

  • Microsoft Access SQL 與 ANSI SQL 分別具有不同的保留字及資料類型。如果搭配使用 Microsoft OLE DB Provider,還可以使用額外的保留字。

  • 有不同的 Between...And 建構規則,其語法如下所示:

    expr1 [NOT] Betweenvalue1Andvalue2

    在 Microsoft Access SQL 中,value1 可以大於 value2;而在 ANSI SQL 中,value1 必須等於或小於 value2

  • Microsoft Access SQL 支援將 ANSI SQL 萬用字元及 Microsoft Access 的特定萬用字元 與 Like 運算子搭配使用。而 ANSI 與 Microsoft Access 萬用字元的用法是相斥的,只可以選擇其中一個,而不得混合使用。只有在使用 Microsoft Access 資料庫引擎及 Microsoft Office Access 2007 OLE DB Provider 時,才可以使用 ANSI SQL 萬用字元。如果試圖透過 Office Access 2007 或 DAO 使用 ANSI SQL 萬用字元,則萬用字元會解譯為文字。

相符字元

Microsoft Access SQL

ANSI SQL

任何單一字元

?

_ (底線)

零個或多個字元

*

%

  • 通常,Microsoft Access SQL 的限制較少。例如,它允許對運算式進行分組及排序。

  • Microsoft Access SQL 支援較多功能強大的運算式。

Microsoft Access SQL 的增強功能

Microsoft Access SQL 提供下列增強功能:

轉換陳述式,交叉資料表查詢提供支援。

  • 其他 SQL 彙總函數,如 StDevVarP

定義參數查詢參數宣告。

Microsoft Access SQL 不支援的 ANSI SQL 功能

Microsoft Access SQL 不支援下列 ANSI SQL 功能:

  • DISTINCT 彙總函數參照。例如,Microsoft Access SQL 不支援 SUM(DISTINCT columnname)。

  • 用於限制查詢所傳回之列數的 LIMIT TO nn ROWS 子句。您只可以使用 WHERE 子句來限制查詢的範圍。



增進您的 Office 技巧
探索訓練
優先取得新功能
加入 Office 測試人員

這項資訊有幫助嗎?

感謝您的意見反應!

感謝您的意見反應! 我們將協助您與其中一位 Office 支援專員連絡以深入了解您的意見。

×