mysql 查詢包含大寫的資料

2021-09-26 13:21:22 字數 464 閱讀 9014

1. 問題背景

為了相容老資料,需要根據乙個欄位的全大寫還是全小寫來區分為不同類別

2. 實現原理

採用mysql 正規表示式(regexp)來時實現,另外為了防止資料庫沒有設定區分大小所以也需要加上binary關鍵字

例如:select count(1) from `table` `t` where t.title regexp binary '[a-z]';           //查詢title中包含大寫字母的資料

至此,原本的問題可以解決了,但是要是有大小寫混合的如何篩選呢

不包含大寫字母:

select count(1) from `table` `t` where t.title not regexp binary '[a-z]';

orselect count(1) from `table` `t` where t.title regexp binary '[^a-z0-9]'

mysql查詢包含逗號的資料,並逗號拆分為多行展現

在做系統開發的時候,有可能是由於之前的遺留問題,導致在資料入庫的時候,將多個資料以逗號分隔的實行,儲存在一條資料中,例如 idvalue 1yang,zheng,song 2zhao,qian,sun 3jiang 現在因為新的需求,需要將這些資料以下邊的方式儲存在資料庫中,方便查詢和處理 idva...

mysql 模糊查詢(包含 存在)方法

in not in 可以與子查詢一起使用,也可以直接in a,b.exists not exist一般都是與子查詢一起使用 like str 決定匹配位置 like是廣泛的模糊匹配,字串中沒有分隔符 find in set str,strlist select from test where fin...

查詢表A包含但表B不包含的資料

select a.from employee skill list a where select count 1 as num from employee skill table b where b.ep name aa and b.skill a.skill 0解釋 當a,b都包含時,從句sele...