当前位置: 首页 > news >正文

网站的主域名中山建设招聘信息网站

网站的主域名,中山建设招聘信息网站,网站开发建设属于什么费用,wordpress 安全防护 插件前言#xff1a; 学习和使用数据库可以说是程序员必须具备能力#xff0c;这里将更新关于MYSQL的使用讲解#xff0c;大概应该会更新30篇#xff0c;涵盖入门、进阶、高级(一些原理分析);这一篇是讲解分组、排序、分页查询#xff0c;并且结合案例进行讲解#xff1b;虽…前言 学习和使用数据库可以说是程序员必须具备能力这里将更新关于MYSQL的使用讲解大概应该会更新30篇涵盖入门、进阶、高级(一些原理分析);这一篇是讲解分组、排序、分页查询并且结合案例进行讲解虽然MYSQL命令很多但是自己去多敲一点到后面忘记了查一下就可以回忆起来使用了这一系列也是本人学习MYSQL做的笔记也是为了方便后面忘记查询参考资料尚硅谷、黑马、csdn和知乎博客欢迎收藏 关注本人将会持续更新。 文章目录 分组查询排序查询分页查询 课程使用数据文件: 后台私信获取。 分组查询 什么是分组呢 分组这个概念在生活中其实是很常见的比如有以下需求 1.在一个班级之中要求男女各一组进行辩论赛2.在公司中要求每个部门一组进行拔河比赛 解决 对于第一个需求假设存在学生表那么在学生表之中一定会存在一个性别字段性别只可能是男或者女。而在公司之中如果要进行部门分组肯定需要一个部门列存储员工所在部门 注意 分组只对数据有重复的字段才有意义 语法 SELECT 分组字段/聚合函数 FROM 表名 [WHERE 条件] GROUP BY 分组字段 [HAVING 分组后条件];要注意where、having的使用位置条件。 WHERE和HAVING区别 WHERE是在分组之前使用(可以没有GROUP BY)不允许使用统计函数WHERE 主要用来过滤行数据HAVING是在分组之后使用(必须结合GROUP BY)允许使用统计函数HAVING 主要用于对聚合函数如 COUNT(), SUM(), AVG() 等的结果进行条件筛选。 案例实践 统计出每个工作岗位的人数 select job 工作,count(job) 人数 from emp group by job; /* ----------------- | 工作 | 人数 | ----------------- | CLERK | 4 | | SALESMAN | 4 | | MANAGER | 3 | | ANALYST | 2 | | PRESIDENT | 1 | ----------------- 5 rows in set (0.00 sec) */统计出每种职位的最低和最高工资 select min(sal) min_salary, max(sal) max_salary from emp group by job; /* ------------------------ | min_salary | max_salary | ------------------------ | 800 | 1300 | | 1250 | 1600 | | 2450 | 2975 | | 3000 | 3000 | | 5000 | 5000 | ------------------------ 5 rows in set (0.00 sec) */注意事项 如果ya查询之中不存在GROUP BY子句那么在SELECT子句之中如果出现统计函数其他任何字段都不允许出现。 #错误的语句 SELECT ename,COUNT(job) FROM emp; #正确的语句 SELECT COUNT(job) FROM emp;在统计查询之中(存在GROUP BY子句)SELECT子句之中只允许出现分组字段(GROUP BY之后定义后含有的字段)和统计函数其他的任何字段都不允许出现。 #错误的语句 SELECT ename,COUNT(job) FROM emp GROUP BY job; #正确的语句 SELECT job,COUNT(job) FROM emp GROUP BY job;总的来说只允许出现统计函数和group by后面跟的字段。 查询需求 显示不同职位薪资少于1500的人数 select job, count(ename) nums from emp where sal 1500 group by job; /* ---------------- | job | nums | ---------------- | CLERK | 4 | | SALESMAN | 2 | ---------------- 2 rows in set (0.00 sec) */显示非销售人员(salesman)工作名称以及从事同一工作的员工的月工资的总和并且要满足从事同一工作的员工的月工资合计大于等于5000。 # 分析拆成两部分 -- 显示非销售人员(salesman)工作名称以及从事同一工作的员工的月工资的总和 -- 并且要满足从事同一工作的员工的月工资合计大于等于5000select job, sum(sal) as sal_sum from emp where job ! salesman group by job having sum(sal) 5000; /* -------------------- | job | sal_sum | -------------------- | MANAGER | 8275 | | ANALYST | 6000 | | PRESIDENT | 5000 | -------------------- 3 rows in set (0.00 sec) */排序查询 通过条件查询语句可以查询到符合用户需求的数据但是查询到的数据一般都是按照数据最初被添加到表中的顺序来显示。为了使查询结果的顺序满足用户的要求MySQL 提供了 ORDER BY 关键字来对查询结果进行排序。 在实际应用中经常需要对查询结果进行排序比如在网上购物时可以将商品按照价格进行排序在医院的挂号系统中可以按照挂号的先后顺序进行排序等。 语法 SELECT 字段名 FROM 表名 ... ORDER BY 排序字段名 [ASC|DESC],[排序字段名 [ASC|DESC]];语法说明 排序字段名表示需要排序的字段名称多个字段时用逗号隔开。ASC|DESCASC表示字段按升序排序DESC表示字段按降序排序。其中ASC为默认值。 特点 ORDER BY子句一般放到查询语句的最后面。当排序的字段中存在空值时ORDER BY 会将该空值作为最小值来对待。ORDER BY 指定多个字段进行排序时MySQL 会按照字段的顺序从左到右依次进行排序。注意在对多个字段进行排序时排序的第一个字段必须有相同的值才会对第二个字段进行排序,如果第一个字段数据中所有的值都是唯一的MySQL 将不再对第二个字段进行排序。 项目案例 根据姓名对员工进行排序(升序) select * from emp order by ename asc;/* ---------------------------------------------------------------- | empno | ename | job | mgr | hiredate | sal | comm | deptno | ---------------------------------------------------------------- | 7876 | ADAMS | CLERK | 7788 | 1987-05-23 | 1100 | NULL | 20 | | 7499 | ALLEN | SALESMAN | 7698 | 1981-02-20 | 1600 | 300 | 30 | | 7698 | BLAKE | MANAGER | 7839 | 1981-05-01 | 2850 | NULL | 30 | | 7782 | CLARK | MANAGER | 7839 | 1981-06-09 | 2450 | NULL | 10 | | 7902 | FORD | ANALYST | 7566 | 1981-12-03 | 3000 | NULL | 20 | | 7900 | JAMES | CLERK | 7698 | 1981-12-03 | 950 | NULL | 30 | | 7566 | JONES | MANAGER | 7839 | 1981-04-02 | 2975 | NULL | 20 | | 7839 | KING | PRESIDENT | NULL | 1981-11-17 | 5000 | NULL | 10 | | 7654 | MARTIN | SALESMAN | 7698 | 1981-09-28 | 1250 | 1400 | 30 | | 7934 | MILLER | CLERK | 7782 | 1982-01-23 | 1300 | NULL | 10 | | 7788 | SCOTT | ANALYST | 7566 | 1987-04-19 | 3000 | NULL | 20 | | 7369 | SMITH | CLERK | 7902 | 1980-12-17 | 800 | NULL | 20 | | 7844 | TURNER | SALESMAN | 7698 | 1981-09-08 | 1500 | 0 | 30 | | 7521 | WARD | SALESMAN | 7698 | 1981-02-22 | 1250 | 500 | 30 | ---------------------------------------------------------------- 14 rows in set (0.00 sec) */查询入职时间大于1981年6月6日的员工信息并按照入职时间升序排列 select * from emp where hiredate 1981-06-06 order by hiredate asc; /* ---------------------------------------------------------------- | empno | ename | job | mgr | hiredate | sal | comm | deptno | ---------------------------------------------------------------- | 7782 | CLARK | MANAGER | 7839 | 1981-06-09 | 2450 | NULL | 10 | | 7844 | TURNER | SALESMAN | 7698 | 1981-09-08 | 1500 | 0 | 30 | | 7654 | MARTIN | SALESMAN | 7698 | 1981-09-28 | 1250 | 1400 | 30 | | 7839 | KING | PRESIDENT | NULL | 1981-11-17 | 5000 | NULL | 10 | | 7900 | JAMES | CLERK | 7698 | 1981-12-03 | 950 | NULL | 30 | | 7902 | FORD | ANALYST | 7566 | 1981-12-03 | 3000 | NULL | 20 | | 7934 | MILLER | CLERK | 7782 | 1982-01-23 | 1300 | NULL | 10 | | 7788 | SCOTT | ANALYST | 7566 | 1987-04-19 | 3000 | NULL | 20 | | 7876 | ADAMS | CLERK | 7788 | 1987-05-23 | 1100 | NULL | 20 | ---------------------------------------------------------------- 9 rows in set (0.00 sec) */根据工作职位进行升序排列职位相同的情况下再根据入职时间降序排列 select * from emp order by job asc, hiredate desc; /* ---------------------------------------------------------------- | empno | ename | job | mgr | hiredate | sal | comm | deptno | ---------------------------------------------------------------- | 7788 | SCOTT | ANALYST | 7566 | 1987-04-19 | 3000 | NULL | 20 | | 7902 | FORD | ANALYST | 7566 | 1981-12-03 | 3000 | NULL | 20 | | 7876 | ADAMS | CLERK | 7788 | 1987-05-23 | 1100 | NULL | 20 | | 7934 | MILLER | CLERK | 7782 | 1982-01-23 | 1300 | NULL | 10 | | 7900 | JAMES | CLERK | 7698 | 1981-12-03 | 950 | NULL | 30 | | 7369 | SMITH | CLERK | 7902 | 1980-12-17 | 800 | NULL | 20 | | 7782 | CLARK | MANAGER | 7839 | 1981-06-09 | 2450 | NULL | 10 | | 7698 | BLAKE | MANAGER | 7839 | 1981-05-01 | 2850 | NULL | 30 | | 7566 | JONES | MANAGER | 7839 | 1981-04-02 | 2975 | NULL | 20 | | 7839 | KING | PRESIDENT | NULL | 1981-11-17 | 5000 | NULL | 10 | | 7654 | MARTIN | SALESMAN | 7698 | 1981-09-28 | 1250 | 1400 | 30 | | 7844 | TURNER | SALESMAN | 7698 | 1981-09-08 | 1500 | 0 | 30 | | 7521 | WARD | SALESMAN | 7698 | 1981-02-22 | 1250 | 500 | 30 | | 7499 | ALLEN | SALESMAN | 7698 | 1981-02-20 | 1600 | 300 | 30 | ---------------------------------------------------------------- 14 rows in set (0.00 sec) */查询工资不在1000到2000之间的员工的姓名和工资工资按降序排列 select ename, sal from emp where sal 1000 and sal 2000 order by sal desc;/* ------------- | ename | sal | ------------- | KING | 5000 | | SCOTT | 3000 | | FORD | 3000 | | JONES | 2975 | | BLAKE | 2850 | | CLARK | 2450 | ------------- 6 rows in set (0.00 sec) */按工作职位进行分组查看每个工作职位的人数工作职位按升序排列 select ename, sal from emp where sal 1000 and sal 2000 order by sal desc; /* ------------- | ename | sal | ------------- | KING | 5000 | | SCOTT | 3000 | | FORD | 3000 | | JONES | 2975 | | BLAKE | 2850 | | CLARK | 2450 | ------------- 6 rows in set (0.00 sec) */分页查询 对于比较多的数据如果在一个页面全部显示查看起来会眼花缭乱。如果能进行分页显示将更加快捷、清新的浏览如下图所示。 语法 SELECT 字段名 FROM 表名 LIMIT 起始索引, 查询记录数; #起始索引代表从第几条开始特点 起始索引从0开始起始索引 (查询页码 - 1) * 每页显示记录数;如果查询的是第一页数据起始索引可以省略直接简写为LIMIT 10;limit使用位置一般在最后一个。 优点 约束返回结果的数量可以减少数据表的网络传输量 也可以提升查询效率核心提高效率有时候还需要结合索引一起使用。 查询需求 查询第一页员工数据每页展示5条记录 select * from emp limit 0, 5; /* --------------------------------------------------------------- | empno | ename | job | mgr | hiredate | sal | comm | deptno | --------------------------------------------------------------- | 7369 | SMITH | CLERK | 7902 | 1980-12-17 | 800 | NULL | 20 | | 7499 | ALLEN | SALESMAN | 7698 | 1981-02-20 | 1600 | 300 | 30 | | 7521 | WARD | SALESMAN | 7698 | 1981-02-22 | 1250 | 500 | 30 | | 7566 | JONES | MANAGER | 7839 | 1981-04-02 | 2975 | NULL | 20 | | 7654 | MARTIN | SALESMAN | 7698 | 1981-09-28 | 1250 | 1400 | 30 | --------------------------------------------------------------- 5 rows in set (0.00 sec) */查询工资大于1500的员工数据按工资升序排列并分页每页展示5条数据 select * from emp where sal 1500 order by sal asc limit 0, 5; /* -------------------------------------------------------------- | empno | ename | job | mgr | hiredate | sal | comm | deptno | -------------------------------------------------------------- | 7499 | ALLEN | SALESMAN | 7698 | 1981-02-20 | 1600 | 300 | 30 | | 7782 | CLARK | MANAGER | 7839 | 1981-06-09 | 2450 | NULL | 10 | | 7698 | BLAKE | MANAGER | 7839 | 1981-05-01 | 2850 | NULL | 30 | | 7566 | JONES | MANAGER | 7839 | 1981-04-02 | 2975 | NULL | 20 | | 7788 | SCOTT | ANALYST | 7566 | 1987-04-19 | 3000 | NULL | 20 | -------------------------------------------------------------- 5 rows in set (0.00 sec) */
http://www.dnsts.com.cn/news/279726.html

相关文章:

  • 中润建设集团有限公司网站群免费做视频相册的网站
  • 网站建设与管理难学吗百度趋势搜索大数据
  • 高端用户群浏览网站网站建设公司福州
  • 微商城网站建设合同下载wordpress如何设置logo
  • 秦皇岛学网站建设系统开发是系统建设中工作任务最为繁重的阶段
  • 申请备案 关网站上海都市建筑设计有限公司
  • 河南省和城乡建设厅网站共享办公都有哪些公司
  • wordpress网站换空间简易的建筑人才网
  • 网页版qq聊天登录入口北京和隆优化是干嘛的
  • 高端模板建站报价外包平台都有哪些
  • 国人在线做网站软文发布平台媒体
  • 购物网站开发的业务需求分析石家庄中企动力
  • 盐山县做网站价格加盟装修公司哪家好
  • 门户网站建设成本网站实名
  • 清镇网站建设软件界面设计工具下载
  • 免费功能网站四川油建公司官网
  • 常用设计资源网站cdn
  • 网站主流服务器语言seo优化顾问服务阿亮
  • 上海品划网站建设有限公司建设网站目的是什么
  • wordpress 建站 linux吾爱上云小程序制作
  • 网站开发案例详解pdf佛山软件开发培训
  • 济南品质网站建设费用北京工程网站建设
  • 网站开发实战答案外链百科
  • 做汽车的网站网站建设入门教程视频教程
  • 手机网站开发 .net品牌网络seo方案外包
  • 网站绑定微信公众号外国建筑设计网站
  • 不用付费不用登录的网站一站式做网站服务
  • 卖书的网站怎么做怎么做简单的微信浏览的网站
  • 网站分页效果开放平台是什么意思
  • 网站导航栏设计代码在线图表