MySQL的Not Like
在MySQL中,Not Like
是用于在查询中排除具有特定模式的数据的运算符。它与Like
运算符相反,因此如果您想要过滤掉具有特定模式的数据,则可以使用Not Like
来实现这一目的。
语法
Not Like
运算符的一般语法如下:
SELECT columns
FROM table
WHERE column_name NOT LIKE pattern;
columns
:要返回的列名table
:查询的表名column_name
:要筛选的列名pattern
:要排除的模式
示例
假设我们有一个名为students
的表,其中存储了学生的姓名和籍贯。现在我们想要查询出籍贯不为”北京”的学生信息,可以使用Not Like
运算符来实现:
SELECT *
FROM students
WHERE hometown NOT LIKE '北京';
运行以上查询将返回所有籍贯不为”北京”的学生信息。
示例代码说明
让我们来创建一个名为students
的表,并向其中插入一些数据,然后使用Not Like
运算符来查询出符合条件的数据。
首先,创建students
表:
CREATE TABLE students (
id INT PRIMARY KEY AUTO_INCREMENT,
name VARCHAR(50),
hometown VARCHAR(50)
);
然后,向students
表中插入一些数据:
INSERT INTO students (name, hometown) VALUES ('小明', '上海');
INSERT INTO students (name, hometown) VALUES ('小红', '北京');
INSERT INTO students (name, hometown) VALUES ('小华', '广州');
INSERT INTO students (name, hometown) VALUES ('小刚', '北京');
现在,我们可以使用Not Like
运算符来查询出籍贯不为”北京”的学生信息:
SELECT *
FROM students
WHERE hometown NOT LIKE '北京';
运行以上查询将返回以下结果:
id | name | hometown |
---|---|---|
1 | 小明 | 上海 |
3 | 小华 | 广州 |
注意事项
- 在使用
Not Like
运算符时,可以使用通配符来匹配不同的模式。例如,%
表示匹配任意字符,_
表示匹配一个字符。 - 请务必注意模式的大小写,MySQL默认是区分大小写的。
- 使用
Not Like
运算符时,可能会降低查询性能,特别是在对大数据量表进行查询时。建议合理索引列以提高查询效率。
通过本文的介绍,相信您已经了解了MySQL中Not Like
运算符的用法和语法,可以在实际开发中灵活运用它来满足多样化的查询需求。