1> 查询数据中全部数据:select * from 表名
2> 查询数据中某项的数据:eg:select id,name from students;
3> 消除重复行:eg:select distinct gender from students;
(指删除gender中重复的所在行)
*注:eg:select distinct id,gender from students;函数
则须要两行都重复才不显示,例如id均不一样,则所有显示。spa
eg:Between min and max表示在最小和最大之间的范围blog
(当一句中有多个and,那么离between最近的and是和他一块儿的,剩下的才是逻辑与)排序
and比or先运算若是同时出现并但愿先算or,要加上小括号。内存
count(*):计算总行数,括号中写*和列名结果是相同的字符串
eg:select count(*) from students;//查询学生人数get
max(列):表示求此列的最大值博客
eg:select max(id) from students;//查询编号最大值it
min(列):表示求此列的最小值io
sum(列):求和,此时要求数据类型
avg(列):求此列的平均值
借助聚合获得查询具体内容(子查询):
eg:select * from students where id=(select min(id) from students where isDelete=0);
语法:select 列名 from 表名 group by 列名
eg:select gender,count(*) from students group by gender;
//根据性别分组表示出分别有多少人
Where and having:where是对原始集进行筛选,而having是对结果集分组后进行筛选。
语法:select 列1,列2,聚合… from 表名 group by 列1,列2,列3… having 列1,…聚合…
eg:select gender,count(*) from students group by gender having gender=0;
select gender,count(*)as rs from students group by gender having rs>2;(rs是对count(*)起的别名)
Order by 列1 asc|desc 列2 asc|desc
(列后面不写则默认从小到大排列)
1. asc升序,小到大
2. desc降序,由大到小
(有多个列,若前面的列一样大,则继续比较后面的列)
语法:select * from 表名
limit start,count
(从start开始,获取count条数据)
作分页:limit n*m,m
博客地址:http://www.cnblogs.com/yudanqu/
转载请注明来源