mysql ORD()函数与ASCII()函数使用分析
Jun 01, 2016 am 09:56 AMASCII(str1)
返回字符串str的最左面字符的ASCII代码值。如果str是空字符串,返回0。如果str是NULL,返回NULL
举例:
1.
<code class="language-sql">mysql> select ascii('hi'); +————-+ | ascii('hi') | +————-+ | 104 | +————-+ 1 row in set</code>
104是h的ASCII值
2.输出b和B的ASCII值
<code class="language-sql">mysql> SELECT ASCII('b')AS Lower_Case, ASCII('B') AS Upper_Case; +————+————+ | Lower_Case | Upper_Case | +————+————+ | 98 | 66 | +————+————+ 1 row in set</code>
3.在where语句中使用ASCII函数
输出aut_name首字母的ASCII值小于70的数据
<code class="language-sql">SELECT aut_name,ASCII(aut_name)as "ASCII value of 1st character" FROM author WHERE ASCII(aut_name)</code>
4.输出字段中不存在没有ASCII值的数据
<code class="language-sql">SELECT * FROM table_name WHERE NOT column_to_check REGEXP '[A-Za-z0-9.,-]';</code>
5.与SUBSTRING一起使用计算字符串第二个以后的ASCII值
<code class="language-sql">mysql> select ASCII(SUBSTRING('database',2,1)); +———————————-+ | ASCII(SUBSTRING('database',2,1)) | +———————————-+ | 97 | +———————————-+ 1 row in set</code>
ORD() 函数
ORD() 函数返回字符串第一个字符的ASCII 值。
语法: ORD(string)
举一些简单的例子:
<code>mysql> SELECT ORD('i'); +----------+ | ORD('i') | +----------+ | 105 | +----------+ 1 row in set</code>
或者:
<code>mysql> SELECT ORD('NowaMagic'); +------------------+ | ORD('NowaMagic') | +------------------+ | 78 | +------------------+ 1 row in set</code>
如果汉字又如何呢?
<code>mysql> SELECT ORD('简明现代魔法'); +---------------------+ | ORD('简明现代魔法') | +---------------------+ | 15183488 | +---------------------+ 1 row in set mysql> SELECT ORD('简'); +-----------+ | ORD('简') | +-----------+ | 15183488 | +-----------+ 1 row in set</code>
为什么会有 8 位数那么长呢?原因是数据库使用的字符集问题,此处的数据库使用的是 UTF-8,16位表示一个符号。顺便贴一下SQL的执行语句:
<code>mysql> SHOW CHARACTER SET; +----------+-----------------------------+---------------------+--------+ | Charset | Description | Default collation | Maxlen | +----------+-----------------------------+---------------------+--------+ | big5 | Big5 Traditional Chinese | big5_chinese_ci | 2 | | dec8 | DEC West European | dec8_swedish_ci | 1 | | cp850 | DOS West European | cp850_general_ci | 1 | | hp8 | HP West European | hp8_english_ci | 1 | | koi8r | KOI8-R Relcom Russian | koi8r_general_ci | 1 | | latin1 | cp1252 West European | latin1_swedish_ci | 1 | | latin2 | ISO 8859-2 Central European | latin2_general_ci | 1 | | swe7 | 7bit Swedish | swe7_swedish_ci | 1 | | ascii | US ASCII | ascii_general_ci | 1 | | ujis | EUC-JP Japanese | ujis_japanese_ci | 3 | | sjis | Shift-JIS Japanese | sjis_japanese_ci | 2 | | hebrew | ISO 8859-8 Hebrew | hebrew_general_ci | 1 | | tis620 | TIS620 Thai | tis620_thai_ci | 1 | | euckr | EUC-KR Korean | euckr_korean_ci | 2 | | koi8u | KOI8-U Ukrainian | koi8u_general_ci | 1 | | gb2312 | GB2312 Simplified Chinese | gb2312_chinese_ci | 2 | | greek | ISO 8859-7 Greek | greek_general_ci | 1 | | cp1250 | Windows Central European | cp1250_general_ci | 1 | | gbk | GBK Simplified Chinese | gbk_chinese_ci | 2 | | latin5 | ISO 8859-9 Turkish | latin5_turkish_ci | 1 | | armscii8 | ARMSCII-8 Armenian | armscii8_general_ci | 1 | | utf8 | UTF-8 Unicode | utf8_general_ci | 3 | | ucs2 | UCS-2 Unicode | ucs2_general_ci | 2 | | cp866 | DOS Russian | cp866_general_ci | 1 | | keybcs2 | DOS Kamenicky Czech-Slovak | keybcs2_general_ci | 1 | | macce | Mac Central European | macce_general_ci | 1 | | macroman | Mac West European | macroman_general_ci | 1 | | cp852 | DOS Central European | cp852_general_ci | 1 | | latin7 | ISO 8859-13 Baltic | latin7_general_ci | 1 | | utf8mb4 | UTF-8 Unicode | utf8mb4_general_ci | 4 | | cp1251 | Windows Cyrillic | cp1251_general_ci | 1 | | utf16 | UTF-16 Unicode | utf16_general_ci | 4 | | cp1256 | Windows Arabic | cp1256_general_ci | 1 | | cp1257 | Windows Baltic | cp1257_general_ci | 1 | | utf32 | UTF-32 Unicode | utf32_general_ci | 4 | | binary | Binary pseudo charset | binary | 1 | | geostd8 | GEOSTD8 Georgian | geostd8_general_ci | 1 | | cp932 | SJIS for Windows Japanese | cp932_japanese_ci | 2 | | eucjpms | UJIS for Windows Japanese | eucjpms_japanese_ci | 3 | +----------+-----------------------------+---------------------+--------+ 39 rows in set</code>

Article chaud

Outils chauds Tags

Article chaud

Tags d'article chaud

Bloc-notes++7.3.1
Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise
Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1
Puissant environnement de développement intégré PHP

Dreamweaver CS6
Outils de développement Web visuel

SublimeText3 version Mac
Logiciel d'édition de code au niveau de Dieu (SublimeText3)

Sujets chauds

Compétences de traitement de structures de données volumineuses de PHP

Comment optimiser les performances des requêtes MySQL en PHP ?

Comment utiliser la sauvegarde et la restauration MySQL en PHP ?

Comment insérer des données dans une table MySQL en utilisant PHP ?

Quels sont les scénarios d'application des types d'énumération Java dans les bases de données ?

Comment corriger les erreurs mysql_native_password non chargé sur MySQL 8.4

Comment utiliser les procédures stockées MySQL en PHP ?

Comment créer une table MySQL en utilisant PHP ?
