mysql中ASCII、ORD函数用法详解
一,ASCII(str1)
返回字符串str的最左面字符的ASCII代码值。如果str是空字符串,返回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; |
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)); |
二,ord函数
ORD(str)
如果字符串str最左面字符是一个多字节字符,通过以格式
代码如下 | |
((first byte ASCII code)*256+(second byte ASCII code))[*256+third byte ASCII code...] |
返回字符的ASCII代码值来返回多字节字符代码。如果最左面的字符不是一个多字节字符。返回与ASCII()函数返回的相同值。
代码如下 | |
2 -> 50 |