A-A+

mysql中ASCII、ORD函数用法详解

2017年10月25日 PHP技术文章 暂无评论 阅读 0 views 次

在mysql中ASCII、ORD函数都是把字符转换成ascii码值的函数了,下面我来给各位同学介绍一下mysql中ASCII、ORD用法.

一,ASCII(str1)

返回字符串str的最左面字符的ASCII代码值,如果str是空字符串,返回0,如果str是NULL,返回NULL.

举例:1.代码如下:

  1. mysql> select ascii('hi');   
  2. +————-+   
  3. | ascii('hi') |   
  4. +————-+   
  5. |         104 |   
  6. +————-+   
  7. 1 row in set  

104是h的ASCII值

2.输出b和B的ASCII值,代码如下:

  1. mysql> SELECT ASCII('b')AS Lower_Case, ASCII('B') AS Upper_Case;   
  2. +————+————+   
  3. | Lower_Case | Upper_Case |   
  4. +————+————+   
  5. |         98 |         66 |   
  6. +————+————+   
  7. 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值,代码如下:

  1. mysql> select ASCII(SUBSTRING('database',2,1));   
  2. +———————————-+   
  3. | ASCII(SUBSTRING('database',2,1)) |     --www.xiariboke.net  
  4. +———————————-+   
  5. |                               97 |   
  6. +———————————-+   
  7. 1 row in set   

二,ord函数

ORD(str):如果字符串str最左面字符是一个多字节字符,通过以下格式:

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

返回字符的ASCII代码值来返回多字节字符代码,如果最左面的字符不是一个多字节字符,返回与ASCII()函数返回的相同值,代码如下:

mysql> select ORD('2');

-> 50

标签:

给我留言