模糊查詢是針對字符串操作的,類似正則表達式,沒有正則表達式強大
通配符:_ 、% 、[] 、
_ 表示任意的單個字符
--查詢MyStudent表中任意姓張,名字兩個字的姓名
select * from MyStudent where fname like '張_'
--查詢MyStudent表中任意姓張,名字三個字的姓名
select * from MyStudent where fname like '張__'
%表示匹配任意多個任意字符
--查詢MyStudent表中任意姓張的(第一個爲張)的姓名字數不限的姓名
select * from MyStudent where fname like '張%'
--查詢MyStudent表中姓張的名字兩個字的
select * from MyStudent where fname like '張%'and len(fname) = 2
[]表示篩選範
--查詢表中所有姓張第二個爲數字第三個爲妹的名字
select * from MyStudent where fname like '張[0-9]妹'
select * from MyStudent where fname like '張[a-z]妹'
select * from MyStudent where fname like '張[0-9a-z]妹'--中間爲1個字母和和1個數字,字母大小寫可以通過約束設定,不區分大小寫
select * from MyStudent where fname like '張[!0-9]妹' --中間不爲數字
select * from MyStudent where fname not like '張[0-9]妹'--不能以張開頭妹結尾中間不能是數字同上不一樣
--查詢出表中包含通配符%的姓名
select * from MyStudent where fname like '%[%]%'--通配符放到[]中就轉義了不是通配符了
--查詢表中包含[的姓名
select * from MyStudent where fname like '%/[%' escape '/' --指定通配符爲/
--查詢表中包含通配符[]的姓名
select * from MyStudent where fname like '%/[/]%' escape '/' --指定通配符爲/