1
我想在數據庫上搜索一個名字。但我只想選擇Bill,而不是BiLL或BiLL或......只是「Bill」。但是,當我使用此查詢這表明比爾,比爾,比爾,比爾和...在mysql中做出不同的低位和高位select
query=`select * from names where name='Bill'`
我想在數據庫上搜索一個名字。但我只想選擇Bill,而不是BiLL或BiLL或......只是「Bill」。但是,當我使用此查詢這表明比爾,比爾,比爾,比爾和...在mysql中做出不同的低位和高位select
query=`select * from names where name='Bill'`
默認字符集和校對規則是LATIN1和latin1_swedish_ci,所以非二進制字符串比較默認情況下不區分大小寫。這意味着如果使用col_name LIKE'a%'進行搜索,則會獲得以A或a開頭的所有列值。要使搜索區分大小寫,請確保其中一個操作數具有區分大小寫或二進制排序規則。例如,如果您比較一列和一個字符串,都有latin1字符集,你可以使用COLLATE操作員通過明確使用造成一個操作數有
可以克服這個latin1_general_cs或latin1_bin校對特性區分大小寫的排序規則:
select * from names where name='Bill' COLLATE latin1_general_cs
謝謝你的回答和鏈接。我不知道如何解決這個問題。 – 2014-11-01 20:15:58
感謝您的回答。但我想使用查詢登錄頁面,當我添加COLLATE這將無法正常工作!我需要其他的想法。 – 2014-11-02 13:31:31