mysql搜索不區分大小寫


mysql搜索是不區分大小寫的,這種情況下我們有兩種方法解決

 

知識前提:

BINARY

binary不是函數,而是一個類型轉換運算符,它用來強制字符串為一個二進制字符串,可以理解為在字符串比較的時候區分大小寫。

一般用於查詢語句

 

COLLATE 

即校驗規則:

*_bin: 表示的是binary case sensitive collation,也就是說是區分大小寫的
*_cs: case sensitive collation,區分大小寫
*_ci: case insensitive collation,不區分大小寫

備注:

*為編碼方式

使用它時一般與CHARACTER SET搭配,例如:`name` varchar(30) CHARACTER SET utf8mb4 COLLATE utf8mb4_bin DEFAULT NULL

究其原因,因為當前字段的編碼方式決定了COLLATE可選內容。

 

綜上所述

方法一:搜索語句加上binary

eg: select * from test where binary name= 'aa'

 

方法二:創建時添加CHARACTER SET及COLLATE

eg: name` varchar(30) CHARACTER SET utf8mb4 COLLATE utf8mb4_bin DEFAULT NULL

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM