mysql使查询不区分大小写

ux6nzvsh  于 2021-06-21  发布在  Mysql
关注(0)|答案(1)|浏览(521)

我知道mysql查询是区分大小写的。但在我的一个数据库中,它是不区分大小写的。下面两个查询都给出相同的结果 Select username from auth_user where username='shivam' 以及 Select username from auth_user where username='ShivaM' 我在django项目中使用过这个数据库,我通常使用icontains和iexact查找来进行不区分大小写的查询,但我无法找出上述行为的原因。

zxlwwiss

zxlwwiss1#

默认的字符集和排序规则是latin1和latin1_-swedish_-ci,因此默认情况下非二进制字符串比较不区分大小写。这意味着,如果使用col\ u name(如“a%”)进行搜索,则会得到以a或a开头的所有列值。

// this returns true
select 'A' like 'a'

// this returns false
select 'A' like binary 'a'

select * from user where email like binary 'a'

也许这个链接对你有用
https://dev.mysql.com/doc/refman/8.0/en/case-sensitivity.html

相关问题