MySQL LIKE 运算符可以使用哪些不同的通配符?
众所周知,LIKE 运算符与 WILDCARD 字符一起使用来获取具有指定字符串的字符串。基本上,通配符是帮助搜索匹配复杂条件的数据的字符。以下是可以与 LIKE 运算符结合使用的通配符类型
% -百分比
“%”通配符用于指定 0、1 或更多的模式人物。使用 % 通配符的基本语法如下
Select Statement…Where column_name LIKE ‘X%’
此处,X 是任何指定的起始模式,例如 more 的单个字符,% 匹配从 0 开始的任意数量的字符。
百分比“%”通配符可以通过多种方式与指定的模式。以下是一些示例,显示了带有 % 的不同 LIKE 运算符。在这些示例中,X 代表指定的模式。
1. LIKE 'X%':- 它将查找以“X”开头的任何值。
< p>示例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”结尾的所有值。
示例< /strong>
mysql> Select * from Student Where name LIKE 'a%v';
+------+-------+---------+---------+
| Id | Name | Address | Subject |
+------+-------+---------+---------+
| 2 | Aarav | Mumbai | History |
+------+-------+---------+---------+
1 row in set (0.00 sec)
_ 下划线
下划线通配符用于精确匹配一个字符。使用 _ 通配符的基本语法如下: -Select 语句...Where column_name LIKE 'X_'
这里,X 是任何指定的起始模式,例如 more 的单个字符,_ 恰好匹配一个字符。
下划线“_”通配符可以单独使用,也可以与 % 结合使用,以多种方式与指定模式一起使用。以下是一些示例,显示了带有 % 的不同 LIKE 运算符。在这些示例中,X 代表指定的模式。
1. LIKE 'X_':- 它将查找以“X”开头且 X 后只有一个字符的所有值。
示例
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”结尾且 X 之前恰好有一个字符的任何值。
示例强>
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)
免责声明:
① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。
② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341