真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網(wǎng)站制作重慶分公司

MYSQL從正則查詢扯到查詢中的大小寫敏感的解決方法

MySQL從正則查詢扯到查詢中的大小寫敏感的解決方法,針對(duì)這個(gè)問題,這篇文章詳細(xì)介紹了相對(duì)應(yīng)的分析和解答,希望可以幫助更多想解決這個(gè)問題的小伙伴找到更簡(jiǎn)單易行的方法。

創(chuàng)新互聯(lián)建站主營(yíng)城東網(wǎng)站建設(shè)的網(wǎng)絡(luò)公司,主營(yíng)網(wǎng)站建設(shè)方案,重慶APP軟件開發(fā),城東h5成都小程序開發(fā)搭建,城東網(wǎng)站營(yíng)銷推廣歡迎城東等地區(qū)企業(yè)咨詢

 

MYSQL 中的查詢給人的觀念大多是簡(jiǎn)單的,不復(fù)雜的,將復(fù)雜的事情都交給程序來做,數(shù)據(jù)庫就是一個(gè)容器的概念或一個(gè)固化的觀念。

其實(shí)隨著MYSQL8 的到來,越來越多以前不能在SQL 端執(zhí)行的語句,可以在MYSQL中執(zhí)行,例如CTE ,窗口函數(shù),等等,而查詢中有的是使用like來查,而LIKE 的查詢中有一些查詢比較復(fù)雜,而正則表達(dá)式在SQL 查詢中的使用可以幫助一些復(fù)雜查詢的表達(dá)和實(shí)現(xiàn)??偨Y(jié)起來,MYSQL 正在從街邊的小屁孩,變成那個(gè)拒絕鋼鐵俠出席會(huì)議的蜘蛛俠。(如果你最近看了MYSQL 8.017 的那個(gè)版本的變化)

怎么能進(jìn)行這樣的查詢,我們來看下面幾個(gè)例子

1 如我們要查詢  employees 表中 first_name 是 G 開頭的名字的人有多少

這里我們可以使用 Rlike 來操作 正則表達(dá)式

select count(*) from employees where first_name RLIKE '^G';   

這里G 開頭的 first_name 的人有 1萬6千多人

MYSQL從正則查詢扯到查詢中的大小寫敏感的解決方法

 下面有一個(gè)需求,想找到 G 大小開頭的,中間是字母的 結(jié)尾是 i 的 firstname 

下面的語句應(yīng)該能滿足你的需求

select * from employees where first_name RLIKE '^G[a-z]' and first_name RLIKE 'i$'

MYSQL從正則查詢扯到查詢中的大小寫敏感的解決方法

3 查詢 G 開頭 uo 在 第二第三 字符位置的 first_name

select * from employees where first_name RLIKE '^G[uo]{2,3}';

MYSQL從正則查詢扯到查詢中的大小寫敏感的解決方法

4  而實(shí)際當(dāng)中面臨的一些問題,有的時(shí)候也需要使用正則表達(dá)式來解決

例如 下圖,我們遇到 first_name  寫法有些怪異但如果按照平時(shí)的查詢的方法,會(huì)將他們一股腦的都查詢出來

MYSQL從正則查詢扯到查詢中的大小寫敏感的解決方法

select * from employees where first_name = 'georgi';   

我們使用上面的語句來查詢,結(jié)果可想而知,會(huì)不區(qū)分大小寫來將所有的Georgi  gEORGI 都查出來

MYSQL從正則查詢扯到查詢中的大小寫敏感的解決方法

其實(shí)在早期的MYSQL 的版本 5.X 之前 正則表達(dá)式是可以區(qū)分大小寫的

但現(xiàn)在的版本是不能區(qū)分的。

如何讓目前的正則表達(dá)式能區(qū)分出大小寫

MYSQL從正則查詢扯到查詢中的大小寫敏感的解決方法

我們可以在 你要查詢的字段名前加上 binary 然后匹配正常的正則,你就可以查到你要查的數(shù)據(jù)了,請(qǐng)見上圖

那么問題來了,題目說扯到大小寫敏感,你上面那個(gè)能算是扯到大小寫敏感嗎,如果我不用正則表達(dá)式,或者我不愿意在字段前面加binary ,你怎么解決我大小寫敏感的問題。

說扯咱們就扯,直接跳到療效,看我下邊沒有使用 binary喲,照樣扯到,不不不 是查到了 數(shù)據(jù)。

MYSQL從正則查詢扯到查詢中的大小寫敏感的解決方法

不用正則也可以

MYSQL從正則查詢扯到查詢中的大小寫敏感的解決方法

有人可能馬上說,你表里就那一條記錄吧,來看下圖,當(dāng)然不是

MYSQL從正則查詢扯到查詢中的大小寫敏感的解決方法

問題就扯出來了,到底我搞了什么,讓MYSQL first_name 大小寫敏感了

答案就在圖里面,修改字段后面加binary 就可以了

MYSQL從正則查詢扯到查詢中的大小寫敏感的解決方法

好的今天就扯到這里。

關(guān)于MYSQL從正則查詢扯到查詢中的大小寫敏感的解決方法問題的解答就分享到這里了,希望以上內(nèi)容可以對(duì)大家有一定的幫助,如果你還有很多疑惑沒有解開,可以關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道了解更多相關(guān)知識(shí)。


網(wǎng)站名稱:MYSQL從正則查詢扯到查詢中的大小寫敏感的解決方法
本文地址:http://weahome.cn/article/jcgodg.html

其他資訊

在線咨詢

微信咨詢

電話咨詢

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部