> #### *使用的關鍵字REGEXP或NOT REGEXP(RLIKE或NOT RLIKE)*
'*' 星號是匹配0個或多個在它前面的字符
'.' 點是匹配任意單個字符
'+'匹配前面的子表達式一次或多次
'[]'匹配中括號的任意字符
[abc]匹配字符a b或c
[a-z]匹配任意字符
[0-9]匹配任何數字
[0-9]*匹配任何數量的任何數字
[a-z]*匹配任何數量的字母
^表示以某個字符或字符串開始
$表示以某個字符或字符串結尾
s$表示以字母s結尾
如果使用一個正則表達式來匹配,其模式有別于SQL模式
SQL匹配模式 l% 表示以字符 l 開始的,而正則表達式則是用 ^l 表示以 l 開始的
SQL匹配模式 %l 表示以字符 l 結尾的,而下面表達式則有用 l$ 表示以 l 結尾
SQL匹配模式 %l% 表包含l字符
*****
> #### *SQL匹配模式*
1、使用SQL匹配模式,不能使用操作符=或!=,而是使用操作符LIKE或NOT LIKE;
2、使用SQL匹配模式,MYSQL提供了兩種通配符;
% 表示任意數量的任意字符(其中也包括0個)
_ 表示任意單個字符 ___ 三個下劃線表示查詢包含任意三個字符的字符串 _o% 查詢第二個字符為o的字符串
3、使用SQL匹配模式,如果匹配模式中不包含以上2種通配符中的任意一個, . 其查詢的效果
***`正則默認不區分大小寫,用BINARY強制區分大小寫`***
```SQL
SELECT * FROM `user` where username like '___'; 查詢三個字符
SELECT * FROM `user` WHERE username REGEXP '...'; 查詢只要3個及3個以上
SELECT * FROM `user` WHERE username REGEXP '^...$'; 查詢三個字符
SELECT * FROM `user` WHERE username LIKE '%k%'; 必須兩個%才能匹配#
SELECT * FROM `user` WHERE username LIKE 'k%' 以k
SELECT * FROM `user` WHERE username like '_i%'查詢第二個字符以i開頭的
```
*****
> #### *MySQL存儲過程*
```SQL
SHOW PROCEDURE status #顯示存儲過程
```
創建儲存過程,要先定義分隔符,這里定義的是//
```SQL
DELIMITER //
CREATE PROCEDURE getList()
BEGIN
SELECT * FROM `user` WHERE `scroe` > 60;
END
//
DELIMITER ;
```
刪除存儲過程
```SQL
DROP PROCEDURE [過程1[,過程2…]]
```
*****