在我的表中,我有名字和姓氏。很少有名字是大写的( ABRAHAM ),很少有名字是小写的(abraham),很少有名字是以 ucword 开头的字符(Abraham)。
所以当我使用 REGEXP '^[abc]' 执行 where 条件时,我没有得到正确的记录。如何将名称更改为小写并使用 SELECT QUERY。
SELECT * FROM `test_tbl` WHERE cus_name REGEXP '^[abc]';
这是我的查询,如果记录是小写的,可以正常工作,但我的记录是中间的,我的所有 cus 名称都不是小写的,所有名称都像 ucword。
所以对于上面的查询,没有得到正确的记录显示。
最佳答案
我认为您应该查询您的数据库以确保名称被降低,假设该名称是您希望找到的名称,并且在您的应用程序中您已将其降低为“abraham”,现在您的查询应该像这个:
SELECT * FROM `test_tbl` WHERE LOWER(cus_name) = name
因为我不知道你使用的是什么语言,所以我只输入了名字,但请确保它被降低了,你应该检索 Abraham、ABRAHAM 或名字的任何变体!
希望有帮助!
关于MySQL 正则表达式查询不区分大小写,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3993272/