SQL开发知识:MySQL学习条件查询数据
一、条件查询
利用where
语句可以对数据进行筛选
select * from 表名 where 条件;
二、比较运算符
运算符 |
描述 |
例子 |
= |
等于 |
where id = 1 |
\> |
大于 |
where age > 10 |
< |
小于 |
where age < 10 |
>= |
大于等于 |
where age >= 10 |
<= |
小于等于 |
where age <= 10 |
!= |
不等于 |
where name != '老王' |
select * from users where id = 1;
三、逻辑运算符
运算符 |
描述 |
例子 |
and |
并且 |
where id = 1 and age > 10 |
or |
或者 |
where id = 1 or age > 10 |
not |
取反 |
where not id = 1 |
select * from users where id = 1 and age = 24;
select * from users where not id = 1;
四、范围查询
运算符 |
描述 |
例子 |
in |
在指定的非连续范围内 |
where id in(1,3,5); |
between … and … |
在指定的连续范围内 |
where id between 1 and 5; |
select * from users where id in (1,3,4);
select * from users where id between 1 and 5;
五、空判断
运算符 |
描述 |
例子 |
is null |
判断是否为空 |
where name is null |
is not null |
判断是否不为空 |
where name is not null |
注:null与''是不一样的
INSERT INTO users (name, birth_date, phone,age)
VALUES (”, ‘1990-01-01’, ‘13813145213’,30);
VALUES (”, ‘1990-01-01’, ‘13813145213’,30);
INSERT INTO users (name, birth_date, phone,age)
VALUES (null, ‘1990-01-01’, ‘13813145213’,30);
VALUES (null, ‘1990-01-01’, ‘13813145213’,30);
INSERT INTO users (name, birth_date, phone,age)
VALUES (‘老张’, null, ‘17813145213’,30);
VALUES (‘老张’, null, ‘17813145213’,30);
select * from users where birth_date is null;
六、模糊查询
select * from users where name like ‘王%’;
select * from users where name like ‘%王’;
七、优先级
- 小括号,not,比较运算符,逻辑运算符
- and比or先运算,如果同时出现并希望先算or,需要结合()使用