MySQL LIKE 運算子可以使用哪些不同的萬用字元?
眾所周知,LIKE 運算子與萬用字元一起使用,以獲取包含指定字串的字串。基本上,萬用字元是幫助搜尋匹配複雜條件的資料的字元。以下是可與 LIKE 運算子結合使用的萬用字元型別:
% - 百分號
‘%’ 萬用字元用於指定 0 個、1 個或多個字元的模式。使用 % 萬用字元的基本語法如下所示:
Select Statement…Where column_name LIKE ‘X%’
這裡,X 是任何指定的起始模式,例如單個字元或多個字元,而 % 匹配從 0 開始的任意數量的字元。
百分號 ‘%’ 萬用字元可以與指定的模式以多種方式結合使用。以下是顯示使用 % 的不同 LIKE 運算子的一些示例。在這些示例中,X 代表指定的模式。
1. LIKE ‘X%’:- 它將查詢以“X”開頭的任何值。
示例
mysql> Select * from Student Where name LIKE 'a%'; +------+-------+---------+---------+ | Id | Name | Address | Subject | +------+-------+---------+---------+ | 2 | Aarav | Mumbai | History | +------+-------+---------+---------+ 1 row in set (0.00 sec)
2. LIKE ‘%X’:- 它將查詢以“X”結尾的任何值。
示例
mysql> Select * from Student Where name LIKE '%v'; +------+--------+---------+-----------+ | Id | Name | Address | Subject | +------+--------+---------+-----------+ | 1 | Gaurav | Delhi | Computers | | 2 | Aarav | Mumbai | History | | 20 | Gaurav | Jaipur | Computers | +------+--------+---------+-----------+ 3 rows in set (0.00 sec)
3. LIKE ‘%X%’:- 它將查詢在任何位置包含“X”的任何值。
示例
mysql> Select * from Student Where name LIKE '%h%'; +------+---------+---------+----------+ | Id | Name | Address | Subject | +------+---------+---------+----------+ | 15 | Harshit | Delhi | Commerce | | 21 | Yashraj | NULL | Math | +------+---------+---------+----------+ 2 rows in set (0.00 sec)
4. LIKE ‘X%X’:-它將查詢以“X”開頭並以“X”結尾的任何值。
示例
mysql> Select * from Student Where name LIKE 'a%v'; +------+-------+---------+---------+ | Id | Name | Address | Subject | +------+-------+---------+---------+ | 2 | Aarav | Mumbai | History | +------+-------+---------+---------+ 1 row in set (0.00 sec)
_ 下劃線
下劃線萬用字元用於匹配 exactly 一個字元。使用 _ 萬用字元的基本語法如下所示:Select Statement…Where column_name LIKE ‘X_’
這裡,X 是任何指定的起始模式,例如單個字元或多個字元,而 _ 匹配 exactly 一個字元。
下劃線 ‘_’ 萬用字元可以單獨使用或與 % 結合使用,並可以與指定的模式以多種方式結合使用。以下是顯示使用 % 的不同 LIKE 運算子的一些示例。在這些示例中,X 代表指定的模式。
1. LIKE ‘X_’:- 它將查詢以“X”開頭且之後 exactly 一個字元的任何值。
示例
mysql> Select * from student WHERE year_of_Admission LIKE '200_'; +------+---------+---------+-----------+--------------------+ | Id | Name | Address | Subject | year_of_Admission | +------+---------+---------+-----------+--------------------+ | 1 | Gaurav | Delhi | Computers | 2001 | | 15 | Harshit | Delhi | Commerce | 2009 | | 21 | Yashraj | NULL | Math | 2000 | +------+---------+---------+-----------+--------------------+ 3 rows in set (0.00 sec)
2. LIKE ‘_X’:- 它將查詢以“X”結尾且之前 exactly 一個字元的任何值。
示例
mysql> Select * from student WHERE year_of_Admission LIKE '_017'; +------+--------+---------+-----------+--------------------+ | Id | Name | Address | Subject | year_of_Admission | +------+--------+---------+-----------+--------------------+ | 20 | Gaurav | Jaipur | Computers | 2017 | +------+--------+---------+-----------+--------------------+ 1 row in set (0.00 sec)
3. LIKE _X%:- 它與 % 萬用字元結合使用。它將查詢在第二個位置包含 X 的任何值。
示例
mysql> Select * from student WHERE Name LIKE '_a%'; +------+---------+---------+-----------+--------------------+ | Id | Name | Address | Subject | year_of_Admission | +------+---------+---------+-----------+--------------------+ | 1 | Gaurav | Delhi | Computers | 2001 | | 2 | Aarav | Mumbai | History | 2010 | | 15 | Harshit | Delhi | Commerce | 2009 | | 20 | Gaurav | Jaipur | Computers | 2017 | | 21 | Yashraj | NULL | Math | 2000 | +------+---------+---------+-----------+--------------------+ 5 rows in set (0.00 sec)
4. LIKE X_%_%:- 它與 % 萬用字元結合使用。它將查詢以 X 開頭且至少包含三個字元的任何值。
示例
mysql> Select * from student WHERE Name LIKE 'g_%_%'; +------+--------+---------+-----------+--------------------+ | Id | Name | Address | Subject | year_of_Admission | +------+--------+---------+-----------+--------------------+ | 1 | Gaurav | Delhi | Computers | 2001 | | 20 | Gaurav | Jaipur | Computers | 2017 | +------+--------+---------+-----------+--------------------+ 2 rows in set (0.00 sec)
資料結構
網路
關係資料庫管理系統 (RDBMS)
作業系統
Java
iOS
HTML
CSS
Android
Python
C語言程式設計
C++
C#
MongoDB
MySQL
Javascript
PHP