模糊查询中的LIKE运算符就是模糊匹配数据,NOT LIKE的使用方式与之相同,它的作用正好相反,获取匹配不到的数据。下面通过示例演示下:
CREATE DATABASE mahaiwuji;
USE mahaiwuji;
CREATE TABLE emp
(
empno INT PRIMARY KEY,
ename VARCHAR(10),
sal INT
) ENGINE = INNODB DEFAULT CHARSET = utf8;
INSERT INTO emp VALUES (1,'AMITH',2800);
INSERT INTO emp VALUES (2,'BADFG',2800);
INSERT INTO emp VALUES (3,'FSDDA',2800);
INSERT INTO emp VALUES (4,'NDJSL',1300);
INSERT INTO emp VALUES (5,'GFJKK',3000);
LIKE
获取匹配到的数据
匹配模式符“%”可以匹配任意0到多个字符,“_”表示匹配任意1个字符
输出ename中含有A的记录
SELECT * FROM emp WHERE ename LIKE '%A%';
输出ename中首字母是A的记录
SELECT * FROM emp WHERE ename LIKE 'A%';
输出ename中尾字母是A的记录
SELECT * FROM emp WHERE ename LIKE '%A';
输出ename中第二个字母是A的记录
SELECT * FROM emp WHERE ename LIKE '_A%';
输出ename中第三个字母是D的记录
1 -- '__D%'里面,D前面有俩个_,因为连在一起,所以看起来有一个 2 -- 如果俩个_中间加一个空格,表示的就是另外一个意思 3 SELECT * FROM emp WHERE ename LIKE '__D%';
NOT LIKE
NOT LIKE的使用方式与之相同,用于获取匹配不到的数据
输出ename中不含有A的记录
SELECT * FROM emp WHERE ename NOT LIKE '%A%';