在包含客户信息的数据库和表格中,其中名称和地址混合了拉丁文和亚洲字符我想选择所有做(或不要)包含任何亚洲字符的人。数据采用UTF-8编码。这可能与MYSQL本身有关,还是我需要使用PHP / Perl编写自定义脚本?
答案 0 :(得分:0)
您可以使用正则表达式执行此操作。我们的想法是查找可能在字符串中的所有简单字符并使用^
。所以,找到意想不到的(即"亚洲")字符:
where col regexp '.%[^0-9a-zA-Z.,:()& ].%'
开头和结尾的.%
不是必需的,但我喜欢它们,因此模式类似于LIKE
模式。
答案 1 :(得分:0)
amdixon评论中链接的页面有一个可靠的答案。在这里,我们在SO:
在col:
上选择所有非拉丁字符的行SELECT *
FROM table
WHERE col != CONVERT(col USING latin1)