MYSQL数据库查询详细介绍

数据库简单查询

萌新小白Eric,分享每天学习笔记,欢迎点赞

  • 条件查询
  • 限制结果集
  • 排序
  • 分组
  • 聚合函数
  • 多表联合查询

mysql两千条是个坎 2000条以下全表扫描 速度很快 不用加索引 但是超过2000条需要我们优化

条件 查询

符号说明
=
>=
<=
!=
>
<
or或者
and并且

select * from articles where id<3 or name=‘二十不惑’;

限制结果集 limit

mysql> select * from articles limit 2;

结果集区间

select * from articles limit 0,10; #从0开始取10条数据

分页 :
	1.知道用户向看第几页的数据   通过浏览器知道结果 可以拿到  
	2.每页我们应该显示多少条   我们自己规定好的   可以拿到 
	用户想看的 页数 		 开始的索引		每页显示的条数
	1 						 0     9
	2  						 9     9
	3                        18    9
	
	(用户想看的页数-1)*每页显示的条数 

排序 order by

  • desc 降序
  • asc 正序
select * from post where id>10 and id <100 ORDER BY id asc limit 10,10;

聚合函数

  • count 统计数目
  • sum 求和
  • avg 求平均数
  • max 求最大值
  • min 求最小值
select count(id) as 总数 from stars;

select sum(id) as 总和 from stars;

select avg(id) as 平均数 from stars;

select max(id) as 最大值 from stars;

select min(id) as 最小值 from stars;

分组 group by

SELECT province FROM stars group by province;  # 对省份进行分组 每个省份显示1个   
# 需求  每个省份有多少个明星

select COUNT(province) as 省份 FROM stars;
select count(province) as 人数,province from stars group by province;

人数 省份 
2	山东
1	河北
1	河南
2	湖北

分组结果再过滤 having

select count(province) as result,province from stars group by province HAVING result>1;

模糊查询 like

select * from stars where username like '王宝鹏';
select * from stars where username like '%鹏%';
select * from stars where username like '%鹏';

查询区间 between and

SELECT * from stars where balance BETWEEN 4000 and 6000;

总结

select 你选择的列 
from 表名 
where 条件 like  between and    
group by 分组 having 过滤条件
order_by 排序 
limit 限制结果集


SELECT username,balance from stars where id>1 and balance BETWEEN 4000 and 6000 ORDER BY balance asc limit 2;
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值