mysql中ASCII、ORD函數用法詳解

來源:互聯網
上載者:User

一,ASCII(str1)

返回字串str的最左面字元的ASCII代碼值。如果str是Null 字元串,返回0。如果str是NULL,返回NULL

舉例:
1.

 代碼如下 複製代碼
mysql> select ascii('hi');
+————-+
| ascii('hi') |
+————-+
|         104 |
+————-+
1 row in set

104是h的ASCII值

2.輸出b和B的ASCII值

 代碼如下 複製代碼

mysql> SELECT ASCII('b')AS Lower_Case, ASCII('B') AS Upper_Case;
+————+————+
| Lower_Case | Upper_Case |
+————+————+
|         98 |         66 |
+————+————+
1 row in set

3.在where語句中使用ASCII函數

輸出aut_name首字母的ASCII值小於70的資料

 代碼如下 複製代碼
SELECT aut_name,ASCII(aut_name)as "ASCII value of 1st character"  
FROM author  
WHERE ASCII(aut_name)<70;

4.輸出欄位中不存在沒有ASCII值的資料

 代碼如下 複製代碼

SELECT * FROM table_name WHERE NOT column_to_check REGEXP '[A-Za-z0-9.,-]';

5.與SUBSTRING一起使用計算字串第二個以後的ASCII值

 代碼如下 複製代碼

mysql> select ASCII(SUBSTRING('database',2,1));
+———————————-+
| ASCII(SUBSTRING('database',2,1)) |
+———————————-+
|                               97 |
+———————————-+
1 row in set

二,ord函數

ORD(str)

如果字串str最左面字元是一個多位元組字元,通過以格式

 代碼如下 複製代碼

((first byte ASCII code)*256+(second byte ASCII code))[*256+third byte ASCII code...]

返回字元的ASCII代碼值來返回多位元組字元代碼。如果最左面的字元不是一個多位元組字元。返回與ASCII()函數返回的相同值。

 代碼如下 複製代碼


1 mysql> select ORD('2');

2             -> 50

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.