我正在使用一个MySQL数据库,它从Excel个数据库中导入了一些数据.数据包含非ASCII个字符(em破折号等)以及隐藏的回车符或换行符.有没有办法使用MySQL查找这些记录?

推荐答案

这完全取决于您将什么定义为"ASCII",但我建议try 以下查询的变体:

SELECT * FROM tableName WHERE columnToCheck NOT REGEXP '[A-Za-z0-9]';

该查询将返回columnToCheck包含任何非字母数字字符的所有行.如果有其他可以接受的字符,请将它们添加到正则表达式中的字符类中.例如,如果句点、逗号和连字符都可以,请将查询更改为:

SELECT * FROM tableName WHERE columnToCheck NOT REGEXP '[A-Za-z0-9.,-]';

MySQL文档中最相关的页面可能是100.

Mysql相关问答推荐

在mySQL中使用子查询和WHERE子句的JOIN

递归查询意外地为一个字段返回空值

基于其列之一内的值查询模型

计算MySQL中的连续出现

如何计算每行的剩余金额?

如何 Select 具有最新的 2 个日期字段的行?

如何在不使用子查询的情况下按最小日期计算新用户?

如何通过if语句对SQL查询进行排序

保存SQL查询的中间结果

在 MySQL 中为多列创建索引以进行查询优化

更改整数时间到日期格式 MM/DD/YY,如 python 中的 datetime.fromtimestamp

避免重复进入mysql数据库的最佳方法

如何使用 laravel 连接 mysql?

mysql错误:错误1018(HY000):无法读取'.'的目录(错误号:13)

不正确的整数(2147483647)被插入到 MySQL 中?

PHP 判断 NULL

WHERE 子句中的条件顺序会影响 MySQL 性能吗?

将sql查询的结果写入mysql中的文件

什么是全文索引,我应该什么时候使用它?

为什么在 MySQL 中使用外键约束?