MySQL like和not like查询语句

MySQL like和not like查询语句

在MySQL中,like和not like是两个常用的模糊查询语句,通过它们可以实现对文本类型数据的模糊匹配。本文将详细介绍如何在一个MySQL查询中同时使用like和not like。

阅读更多:MySQL 教程

LIKE语句

LIKE语句用于查找某种模式的字符串,可以包含%和两种通配符,其中%代表任意字符,代表单个字符。下面是一个例子:

SELECT * FROM user WHERE name LIKE '%John%';

这个查询语句将查找所有name字段中包含“John”子串的记录。

NOT LIKE语句

NOT LIKE语句与LIKE语句相反,用于查找不符合某种模式的字符串。语法与LIKE类似,只需要在LIKE后面加上NOT关键字即可。

SELECT * FROM user WHERE name NOT LIKE '%Smith%';

这个查询语句将查找所有name字段中不包含“Smith”子串的记录。

同时使用LIKE和NOT LIKE

在某些情况下,我们需要同时使用LIKE和NOT LIKE来进行查询。例如,我们需要查找所有name字段中包含“John”子串但不包含“Smith”子串的记录,可以使用如下的查询语句:

SELECT * FROM user WHERE name LIKE '%John%' AND name NOT LIKE '%Smith%';

这个查询语句将同时使用LIKE和NOT LIKE,查找所有name字段中包含“John”子串且不包含“Smith”子串的记录。注意,在这个查询中,我们使用了AND逻辑运算符将两个条件连接起来。

例子说明

下面是一个例子,我们假设有一个user表,其中包含name和age两个字段:

name age
John 18
Smith 20
Alice 22
Robert 25
Linda 30

假设我们需要查找所有年龄大于20岁但不包含“Smi”子串的记录,可以使用如下的查询语句:

SELECT * FROM user WHERE age > 20 AND name NOT LIKE '%Smi%';

这个查询语句将返回以下结果:

name age
Alice 22
Robert 25
Linda 30

总结

本文介绍了MySQL中的like和not like查询语句,以及如何在一个查询中同时使用它们来实现复杂的模糊查询。使用like和not like可以方便地进行文本匹配,适用于很多应用场景。掌握这些查询语句的用法,将有助于我们更好地进行数据查询和分析。

Camera课程

Python教程

Java教程

Web教程

数据库教程

图形图像教程

办公软件教程

Linux教程

计算机教程

大数据教程

开发工具教程