mysql 排序,分组查询,指针查询,计算

分组语句:group by 字段 (语句后面,order前)
排序语句:order by 字段,字段 ASC(正序)/DESC(倒序) (语句后面,limit之前)
指针查询:limit 初始值,结束值 (所有语句最后面)
 
语句顺序很重要,放反了会导致无法正常执行
 

计算

count(*) 统计函数
max(*) 最大值函数
min(*) 最小值函数
avg(*) 平均值函数
sum(*) 累计值函数
 
1、
分组查询:
SELECT * FROM `test` group by remark
原数据是:
id uid regdate remark

1 张三 2008-07-02 学生

2 李四 2008-07-03 学生

3 王五 2008-07-02 工人

4 赵六 2008-07-01 学生
 
使用分组后输出的是:
id uid regdate remark

1 张三 2008-07-02 学生

3 王五 2008-07-02 工人
 
 

2、

排序查询
SELECT * FROM `test` order by regdate asc
 
使用排序查询后(按注册时间查询)
id uid regdate remark

4 赵六 2008-07-01 学生

1 张三 2008-07-02 学生

3 王五 2008-07-02 工人

2 李四 2008-07-03 学生
 

3、

order by 后面可以多个字段使用
SELECT * FROM `test` order by regdate,id
像上面的即按注册时间,又按id排序
 
 

4、

也可以让不同字段按不同方式排序
SELECT * FROM `test` order by `regdate` desc,`id` asc
指regdate字段按倒序排列,id字段用正序排列
 

5、

指针查询
SELECT * FROM `test` limit 0,2
从第指针0开始,取前两条
但上面的语句也可以写成
SELECT * FROM `test` limit 2 

与第一条效果是一样的
 
输出为
id uid regdate remark

1 张三 2008-07-02 学生

2 李四 2008-07-03 学生
 
 

6、

利用count查询test中有多少条数据
SELECT count(*) FROM `test` WHERE 1
 
利用max查询id中最大的
SELECT max(id) FROM `test` WHERE 1

评论

大侠名号:   验证码: 点击我更换图片  

修远兮

在这里记录每一点自己需要的知识

添加创始人微信,一起交流心得

推荐文章RECOMMEND