資料庫like的用法
資料庫like的用法的用法你知道嗎?下面小編就跟你們詳細介紹下資料庫like的用法的用法,希望對你們有用。
資料庫like的用法的用法如下:
match_expression [ NOT ] LIKE pattern [ ESCAPE escape_character ]
引數
match_expression
任何字串資料型別的有效 SQL Server 表示式。
pattern
match_expression 中的搜尋模式,可以包含下列有效 SQL Server 萬用字元。
萬用字元 描述 示例
% 包含零個或更多字元的任意字串。 WHERE title LIKE '%computer%' 將查詢處於書名任意位置的包含單詞 computer 的所有書名。
_(下劃線) 任何單個字元。 WHERE au_fname LIKE '_ean' 將查詢以 ean 結尾的所有 4 個字母的名字(Dean、Sean 等)。
[ ] 指定範圍 ([a-f]) 或集合 ([abcdef]) 中的任何單個字元。 WHERE au_lname LIKE '[C-P]arsen' 將查詢以arsen 結尾且以介於 C 與 P 之間的任何單個字元開始的作者姓氏,例如,Carsen、Larsen、Karsen 等。
[^] 不屬於指定範圍 ([a-f]) 或集合 ([abcdef]) 的任何單個字元。 WHERE au_lname LIKE 'de[^l]%' 將查詢以 de 開始且其後的字母不為 l 的所有作者的姓氏。
Like的運用場合主要在模糊查詢的時候,一般以查詢字串居多,這裡據一些例子來說他的一般用法:
例1,查詢name欄位中包含有“明”字的。
select * from table1 where name like ‘%明%’
這裡不要使用*來代替,一般在使用0個或者任意個字元構成的字串的時候最好使用%
不過在首或尾使用可以相互替換,如果在頭尾同時使用的話,就必須要使用%
例2,查詢name欄位中以“李”字開頭。
select * from table1 where name like ‘李*’
或者
select * from table1 where name like ‘李%’
例3,查詢name欄位中含有數字的。
select * from table1 where name like ‘%[0-9]%’
例4,查詢name欄位中含有小寫字母的。
select * from table1 where name like ‘%[a-z]%’
例5,查詢name欄位中不含有數字的。
select * from table1 where name like ‘%[!0-9]%’