简单查询
select 语句可以帮我们实现数据库的查询功能
查询某一些字段的值
select username passwd from user;
只需要在 select 后面跟上你想要查询的字段名就🆗了
查询所有的数据
select * from user;
去重查询
distinct 关键词可以帮我们实现去重的功能
select distinct username passwd from user;// 在字段前面加上distinct可以进行去重
条件数据记录查询
where 关键字可以对所查询到的数据进行过滤;
where后面可以跟的条件查询
- 带逻辑运算符(
>,<,=)的条件数据查询 - 带
BETWEEN AND关键字的条件数据查询 - 带
IS NULL关键字的条件数据查询 - 带
IN关键字的条件数据查询 - 带
like关键字的条件数据查询
逻辑运算符
= 等于运算符,当某一字段等于某一指定值的时候将被查询到
select username from user where username = 'xiaoqiang'
< 运算符,当某一字段小于某一指定值的时候将被查询到
select username from user where age < 20;
同理>运算符
select username from user where age > 23;
同理以下运算符的使用方法都是一样的
- !=
=
- <=
- and
- or
- not
范围查询
BETWEEN AND 关键字可以查询满足在两个值之间的结果
select username from user where age between 18 and 100;// 查询年龄在18岁到100岁之间的姓名
也可以通过 Not 关键字加 between and 关键字查询到不符合区间的结果
select username from user age not between 18 and 100;
IS NULL
这个关键词主要用来判断某一字段是不是为 NULL ,判断 NULL 不能用 =
- IS NOT NULL 查询某一字段不是NULL时的结果
- IS NULL 查询某一字段是NULL的结果
IN(集合查询)
IN 关键字可以判断一个字段在不在指定的集合中,如果在则返回查询结果,当然也可以使用 NOT IN 来查询某一字段不在指定集合中的情况
select username from user where age in (20,23);select usernname from user where age not in(20,23);
模糊查询
like 关键字可以通过正则表达式来进行模糊查询,比如查询姓张的用户电话,则需要使用模糊查询
常用的匹配符
%匹配一个或多个字符_匹配一个字符[^]不匹配这个集合中的任意一个元素[]匹配在这个集合中的任意一个元素
// 查询以abc结尾的姓名select username from user where username like '%abc'// 查询姓张的三个字的姓名select username from user where username like '张__'// 查询包含abc的姓名select username from user where username like '%abc%'
数据排序
order by 加上ASC | DESC就可以实现排序的功能
select username from user where order by id ASC //通过id字段进行升序查询
select username from user where order by id DESC //通过id字段进行降序查询
通过多个字段进行排序
多个字段进行排序,每一个字段都需要有指定排序方式,并且字段之间需要使用逗号进行隔开
select username from user where order by id ASC,passwd DESC;// 查询结果先通过id进行升序,在通过密码进行降序
LIMIT分页查询
当查询的数据很多的时候,一次性的显示自然是不好的,这时候就需要使用 limit 来限制查询返回的数据的条数了
不设置起始位置
select username from user where id > 2 limit 2;// 意思是查询id>2的所有username但是只显示2条
设置起始位置
select username from user where id > 2 limit 2,5;// 意思是查询id>2的所有username,只从第3条开始总共显示5条// 为什么是3??因为默认第一条是0
查询时常用函数
- COUNT() 统计次数
- AVG() 字段值的平均值
- SUM() 字段值的总和
- MAX() 字段值的最大值
- MIN() 字段值的最小值
分组查询
group by 关键字可以根据某一个字段进行分组
select username from user group by id;
分组查询的时候可以使用 HAVING 来代替 where 进行条件查询
select username from user group by id having id > 2;
