適用於:SQL Server
Azure SQL 資料庫
Azure SQL 受控執行個體
Azure Synapse Analytics
分析平台系統(PDW)
Microsoft Fabric 中的 SQL 分析端點
Microsoft Fabric 中的倉儲
Microsoft Fabric 中的 SQL 資料庫
傳回字元運算式最左側字元的 ASCII 字碼值。
語法
ASCII ( character_expression )
引數
character_expression
char 或 varchar 類型的運算式。
傳回類型
int
備註
ASCII 代表「美國訊息交換標準代碼」(American Standard Code for Information Interchange)。 它是現代電腦的字元編碼標準。 如需 ASCII 字元清單,請參閱 ASCII 的<可列印字元>(Printable characters) 一節。
ASCII 是一組 7 位元的字元集。 此 ASCII 函式不支援 8 位元字元集,如擴展 ASCII 或高階 ASCII。
範例
A. 此範例假設為 ASCII 字元集,並回傳六個字元的 ASCII 值
SELECT ASCII('A') AS A, ASCII('B') AS B,
ASCII('a') AS a, ASCII('b') AS b,
ASCII(1) AS [1], ASCII(2) AS [2];
結果集如下所示。
A B a b 1 2
----------- ----------- ----------- ----------- ----------- -----------
65 66 97 98 49 50
B. 此範例展示了如何正確回傳 7 位元 ASCII 值,但無法處理 8 位元擴展 ASCII 值
SELECT ASCII('P') AS [ASCII], ASCII('æ') AS [Extended_ASCII];
結果集如下所示。
ASCII Extended_ASCII
----------- --------------
80 195
為了驗證結果是否對應到正確的字元代碼點,請使用輸出值搭配 CHAR or NCHAR 函數:
SELECT NCHAR(80) AS [CHARACTER], NCHAR(195) AS [CHARACTER];
結果集如下所示。
CHARACTER CHARACTER
--------- ---------
P Ã
請注意先前結果中,字碼元素 195 的字元是 Ã,而非 æ。 這是因為 ASCII 函式能夠讀取前 7 個位元資料流,但無法讀取額外的位元。 您可以使用 æ 函式來找到 UNICODE 字元的正確字碼元素,該函式可以傳回正確的字元字碼元素:
SELECT UNICODE('æ') AS [Extended_ASCII], NCHAR(230) AS [CHARACTER];
結果集如下所示。
Extended_ASCII CHARACTER
-------------- ---------
230 æ