在Python中,ord()函数返回0到255之间的ASCII码:
>>> ord("a")
97
>>> ord("b")
98
>>> ord("c")
99
>>> ord("á")
225
>>> ord("í")
237
>>> ord("Ñ")
209
但是在MySQL中,即使使用charset修饰符,我也无法获得这些更高的代码:
mysql> SELECT ord("a"),ord("b"),ord("c");
+----------+----------+----------+
| ord("a") | ord("b") | ord("c") |
+----------+----------+----------+
| 97 | 98 | 99 |
+----------+----------+----------+
mysql> SELECT ord("á"),ord(_utf8"á"),ord(_utf8mb4"á"),ord(_latin1"á");
+-----------+----------------+-------------------+------------------+
| ord("á") | ord(_utf8"á") | ord(_utf8mb4"á") | ord(_latin1"á") |
+-----------+----------------+-------------------+------------------+
| 50081 | 50081 | 50081 | 195 |
+-----------+----------------+-------------------+------------------+
mysql> SELECT ascii("á"),ascii(_utf8"á"),ascii(_utf8mb4"á"),ascii(_latin1"á");
+-------------+------------------+---------------------+--------------------+
| ascii("á") | ascii(_utf8"á") | ascii(_utf8mb4"á") | ascii(_latin1"á") |
+-------------+------------------+---------------------+--------------------+
| 195 | 195 | 195 | 195 |
+-------------+------------------+---------------------+--------------------+
如何在MySQL中获得那些225、237或209代码?哪个功能?哪个字符集?