亚洲激情专区-91九色丨porny丨老师-久久久久久久女国产乱让韩-国产精品午夜小视频观看

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

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

發布時間:2021-10-25 10:23:24 來源:億速云 閱讀:175 作者:柒染 欄目:大數據

MYSQL從正則查詢扯到查詢中的大小寫敏感的解決方法,針對這個問題,這篇文章詳細介紹了相對應的分析和解答,希望可以幫助更多想解決這個問題的小伙伴找到更簡單易行的方法。

 

MYSQL 中的查詢給人的觀念大多是簡單的,不復雜的,將復雜的事情都交給程序來做,數據庫就是一個容器的概念或一個固化的觀念。

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

怎么能進行這樣的查詢,我們來看下面幾個例子

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

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

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

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

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

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

下面的語句應該能滿足你的需求

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  而實際當中面臨的一些問題,有的時候也需要使用正則表達式來解決

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

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

select * from employees where first_name = 'georgi';   

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

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

其實在早期的MYSQL 的版本 5.X 之前 正則表達式是可以區分大小寫的

但現在的版本是不能區分的。

如何讓目前的正則表達式能區分出大小寫

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

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

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

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

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

不用正則也可以

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

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

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

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

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

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

好的今天就扯到這里。

關于MYSQL從正則查詢扯到查詢中的大小寫敏感的解決方法問題的解答就分享到這里了,希望以上內容可以對大家有一定的幫助,如果你還有很多疑惑沒有解開,可以關注億速云行業資訊頻道了解更多相關知識。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

孟津县| 云南省| 益阳市| 蓝山县| 略阳县| 潮安县| 曲阳县| 外汇| 嘉义县| 开原市| 滨海县| 关岭| 璧山县| 武安市| 兴宁市| 乌拉特中旗| 剑川县| 苍南县| 老河口市| 临西县| 芜湖市| 宁南县| 白朗县| 耿马| 刚察县| 融水| 离岛区| 河东区| 普陀区| 彩票| 林周县| 瓮安县| 福泉市| 临沭县| 肥西县| 颍上县| 武威市| 会泽县| 多伦县| 桓仁| 策勒县|