本文有點(diǎn)不準(zhǔn),僅作參考;可以使用MySQL的大小寫相互轉(zhuǎn)換,再拼接or來規(guī)避
查看MySQL版本?show variables;?
1、查看 MySQL 當(dāng)前的區(qū)分大小寫設(shè)置:
SHOW VARIABLES LIKE 'lower_case_table_names';或者
show Variables like '%table_names'
2、更改大小寫敏感設(shè)置:
在 MySQL 5.7 中,更改大小寫敏感設(shè)置要求修改配置文件 my.cnf 或 my.ini 文件,并重啟 MySQL 服務(wù)器。不過,在 MySQL 8.0 中,我們可以直接更改 lower_case_table_names 系統(tǒng)變量的值,而不必重啟 MySQL 服務(wù)器。下面是一些常用的設(shè)置值:
· 0:區(qū)分大小寫(默認(rèn)設(shè)置)
· 1:不區(qū)分大小寫,存儲(chǔ)時(shí)將所有名稱轉(zhuǎn)換為小寫
· 2:不區(qū)分大小寫,存儲(chǔ)時(shí)將所有名稱轉(zhuǎn)換為大寫
如果要將 MySQL 的大小寫敏感設(shè)置修改為不區(qū)分大小寫,存儲(chǔ)時(shí)將所有名稱轉(zhuǎn)換為小寫的設(shè)置,我們可以執(zhí)行以下命令:
SET GLOBAL lower_case_table_names=1;
注意:如果存在已經(jīng)存在的表,刪除大小寫敏感設(shè)置可能會(huì)導(dǎo)致表名不一致,所以改變這個(gè)設(shè)置可能會(huì)導(dǎo)致一些不兼容的問題。
正題:
但是這不是今天我們想要的,以上是WHERE關(guān)鍵字區(qū)分,去過我們想要SELECT結(jié)果中區(qū)分該怎么辦呢?
答案是:修改該字段的字符集,一般我們創(chuàng)建數(shù)據(jù)庫是會(huì)給個(gè)默認(rèn)的?utf8mb4_general_ci 字符集(作用整庫、所有字段都會(huì)默認(rèn)這個(gè)字符集),如果我們想要區(qū)分大小寫的話?utf8mb4_general_ci 字符集是無法滿足的;所以需要修改這個(gè)字段的字符集為?utf8mb4_bin ,然后我們運(yùn)行以下語句 就可以分別查出大小寫不同的數(shù)據(jù)
1、utf8mb4_bin 字符集查詢數(shù)據(jù)
2、utf8mb4_general_ci 字符集查詢數(shù)據(jù)文章來源:http://www.zghlxwxcb.cn/news/detail-774832.html
文章來源地址http://www.zghlxwxcb.cn/news/detail-774832.html
到了這里,關(guān)于MySQL:區(qū)分大小寫的文章就介紹完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!