昨晚,開會的時候他們提到了萬用字元,我聽得都迷糊了,所以只好回去找了一下相關的資料。
資料庫查詢有完整式查詢和模糊式查詢,模糊式查詢的語句為:SELECT 欄位 FROM 表 WHERE 某欄位 Like 條件
其中SQL萬用字元用於“Like"運算式,匹配的類型有:
1."% "萬用字元
表示0個或更多字元組成的任一字元串
例如,在“student”表中查詢姓“李”的學生資訊。
Use studentSelect * from student where 姓名 like '李%'
查出來的結果就是姓李的全部學生
2."_"萬用字元
"_"號表示任意單個字元,該符號只能匹配一個字元,利用"_"號可以作為萬用字元組成匹配模式進行查詢
例如,在“student”表中,查詢姓“李的”並且名字只是兩個字的同學資訊
Use student Select * from student where 姓名 like '李_'
最後查出的結果是一個姓李單名的學生
另外,它可以放在查詢條件的任意位置,且只能代表一個字元。例如:
Use StudentSelect * from student where 姓名 like '李_明'
查詢出來的就是,姓李的並且末尾是明的同學
3 ."[]"萬用字元
在模式查詢中可以使用"[]"符號來查詢一定範圍內的資料。它用於表示一定範圍內的任意單個字元,它包括兩端資料。
在”student“表中,查詢電話號碼以”3451“結尾,並且開頭數字位於1—5之間的學生資訊。
Use studentSlelect * from student where 連絡方式 like '[1-5]3451'
4."[^]" 萬用字元
在模式查詢中可以使用"[^]"符號來查詢不在指定範圍內的資料。"[^]"符號用於表示不在某範圍內的任意單個字元,它包括兩端資料。
在"student"表中,查詢電話號碼以“3451”結尾,但不以“2”開頭的學生資訊
Use studentSelect * from student where 連絡方式 like '[^2]3451'
另外,Microsoft Access中,萬用字元也可用於Like 運算式中,不同於SQL的是,它是以星號(*)匹配零個或多個字元,以問號(?)匹配單個字元。