如何在MYSQL中查询格式不正确的数据?
例如,如果我的表中有以下数据:
1.John Doe
2.john doe
3.JOHN DOE
4.joHn DoE.
我正在寻找一个会返回第2,3和4行的查询。
答案 0 :(得分:0)
SELECT id,name FROM `Table1`
WHERE `name` NOT REGEXP BINARY '([A-Z]{1,1}[a-z]+ [A-Z]{1,1}[a-z]+)$';
输出
id name
2 john doe
3 JOHN DOE
4 joHn DoE.
现场演示
答案 1 :(得分:0)
为了确保数据的完整性,最好将名称/姓氏/街道名称/地址等存储在单独的字段中,而不进行任何大小写。出于显示目的,您可以应用大写。这样你就可以省去一些麻烦,弄清楚John = john = jOhn。
运行以下内容以规范化值:
UPDATE Table1 SET name = LOWER(name)