一.MySQL排序
#查看一下我们数据表select*fromxse;
#1.单列排序,我们按照sale_date进行数据排序select*fromxseorderbysale_date;
#1.单列排序,我们按照sale_date进行数据排序select*fromxseorderbysale_date;
#2.多列排序,我们按照sale_date,numdesc进行数据排序select*fromxseorderbysales_A,numdesc;#我们以sales_A升序排序,num降序排列#当sales_A相同时按照num降序排列
二.MySQL分组
#1.按照单列分组#我们筛选出每个人的销售总额mysqlselectname,sum(num)-fromxse-groupbyname;#筛选数据为分组名和聚合函数
#2.按照多列分组#我们筛选出每个员工销售各自负责产品总量mysqlselectname,cat,sum(num)-fromxse-groupbyname,cat;
#3.接下来我们做一个综合练习#筛选出上半年各个产品销售量并降序排列mysqlselectcat,sum(num)-fromxse-wheresale_datebetween-01-01and-06-30-groupbycat-havingsum(num)-orderbysum(num)desc;整个语句执行顺序1、from对查询指定的表计算笛卡尔积2、where按照where_condition过滤数据3、groupby进行分组操作4、having按照having_condition过滤数据5、select选择指定的列6、orderby按照order_by_condition排序
三.limit函数
#此处我们用成绩表练习,我们先查看一下它的数据(按照score_num降序排序)mysqlselect*fromscore_test-orderbyscore_numdesc;
#我们取成绩比较好的三门功课成绩mysqlselect*fromscore_test-orderbyscore_numdesc-limit0,3;#检索排序后1-3行
#我们取排名3-5名三门功课成绩mysqlselect*fromscore_test-orderbyscore_numdesc-limit2,3;
#我们取第3名以后所有课成绩mysqlselect*fromscore_test-orderbyscore_numdesc-limit2,00;#原来的MySQL版本是可以用-1来代替,但是新版本是不行的#如果我们知道我们数据有多少行,我们可以计算出来#如果我们不知道数据有多少行,我们可以写一个很大的数字,它会自动筛选数据到末尾
#接下来我们做一个类似于前面的综合练习#我们筛选出上半年销量前2名工作人员mysqlselectname,sum(num)-fromxse-wheresale_datebetween-01-01and-06-30-groupbyname-havingsum(num)-orderbysum(num)desc-limit2;整个语句执行顺序1、from对查询指定的表计算笛卡尔积2、where按照where_condition过滤数据3、groupby进行分组操作4、having按照having_condition过滤数据5、select选择指定的列6、orderby按照order_by_condition排序7、limit返回指定数目记录cauwfq