mysql查询某一个字段是否包含中文字符

 在使用mysql时候,某些字段会存储中文字符,或是包含中文字符的串,查询出来的方法是:

 

 SELECT col FROM table WHERE length(col)!=char_length(col)

 

  网上搜索有不少种查询方法,可是试了不少都不行,这个是找到的可使用的查询方法,原理其实很简单,当字符集为UTF-8,而且字符为中文时,length() 和 char_length() 两个方法返回的结果是不相同的。mysql

 

 

# 如下这两个方法查询字段中是否包含中文 SELECT country FROM kaggle_main_info WHERE length(country)!=char_length(country);select country from kaggle_main_info where not(country regexp "[\u0391-\uFFE5]") ORDER BY  country DESC ;