如何在 MySQL 中查詢非 ASCII 字元?
非 ASCII 字元是諸如磅符號(£)、商標符號、正負號等字元。若要從表格中找到非 ASCII 字元,需要執行以下步驟:-
首先,使用以下給出的 create 命令建立一個表格:-
mysql> CREATE table NonASciiDemo -> ( -> NonAScii varchar(100) -> ); Query OK, 0 rows affected (0.61 sec)
然後,使用以下給出的 insert 命令將記錄插入表格:-
mysql> INSERT into NonASciiDemo values('-,-');
Query OK, 1 row affected (0.18 sec)
mysql> INSERT into NonASciiDemo values(' ');
Query OK, 1 row affected (0.23 sec)
mysql> INSERT into NonASciiDemo values('£');
Query OK, 1 row affected (0.30 sec)
mysql> INSERT into NonASciiDemo values('123abcd£');
Query OK, 1 row affected (0.24 sec)如上所示,向表格中插入了四條記錄,其中兩條記錄包含非 ASCII 字元,兩條記錄包含 ASCII 字元。
若要顯示所有記錄,請使用以下給出的 select 命令:-
SELECT * from NonASciiDemo;
以下是輸出:
+----------+ | NonAScii | +----------+ | -,- | | | | £ | | 123abcd£ | +----------+ 4 rows in set (0.00 sec)
找到非 ASCII 字元的語法如下:-
SELECT * FROM yourTableName WHERE NOT HEX(yourColumnName) REGEXP '^([0-7][0- 9A-F])*$';
使用上述語法獲取非 ASCII 字元的查詢如下:-
mysql> SELECT * FROM NonASciiDemo WHERE NOT HEX(NonAScii) REGEXP '^([0-7][0-9AF])*$';
以下是上述查詢的輸出:-
+----------+ | NonAScii | +----------+ | £ | | 123abcd£ | +----------+ 2 rows in set (0.00 sec)
廣告
資料結構
網路
關係型資料庫管理系統
作業系統
Java
iOS
HTML
CSS
Android
Python
C 程式設計
C++
C#
MongoDB
MySQL
Javascript
PHP