如何在MySQL中检测带有中文字符的行?

chu*_*byk 2 mysql non-ascii-characters

我在MySQL中有一些中文字符的行。我要删除这些行。

如何在MySQL中检测带有中文字符的行?

She*_*don 5

这是“ Chinese_Test” 表,在我的PhpMyAdmin 数据中包含汉字

在此处输入图片说明

结构体
在此处输入图片说明

注意,我的排序规则类型是utf8,因此让我们看一下utf8表中的汉字。 http://www.ansell-uebersetzungen.com/gbuni.html

注意汉字是从E4到E9,因此我们使用代码

select number 
from Chinese_Test
where HEX(contents) REGEXP '^(..)*(E[4-9])';
Run Code Online (Sandbox Code Playgroud)

结果如下:

在此处输入图片说明


hjp*_*r92 0

如果所有其他行都有字母数字值,请尝试以下操作:

DELETE FROM  tableName WHERE NOT columnToCheck REGEXP '[A-Za-z0-9.,-]';
Run Code Online (Sandbox Code Playgroud)

在删除之前请使用以下命令检查结果:

SELECT * FROM tableName WHERE NOT columnToCheck REGEXP '[A-Za-z0-9.,-]';
Run Code Online (Sandbox Code Playgroud)