0

0

mysql查询操作

php中文网

php中文网

发布时间:2016-06-07 15:34:33

|

1299人浏览过

|

来源于php中文网

原创

1、选择所有的记录 select * from table_name; 其中*表示表中的所有字段。 2、查询不重复的记录 用关键字distinct select distinct 字段名 from 表名; 3、条件查询 用关键字where select * from 表名 where 条件; where后面的条件是一个字段的比较,可以使

1、选择所有的记录

   select * from table_name;

   其中*表示表中的所有字段。

 

2、查询不重复的记录

   用关键字distinct

   select distinct  字段名  from  表名;

  

3、条件查询

   用关键字where

   select * from 表名 where 条件;

   where后面的条件是一个字段的比较,可以使用=、>、=、

 

4、排序和限制

   用关键字order by  desc(降序), asc(升序),limit(排序结果显示一部分)

   order by后面可以跟多个不同的排序字段,并且每个排序字段可以有不同的排序顺序。

   例如:把emp表中的记录按照工资sal的高低顺序排序。

   select * from emp order by sal;  

   select * from emp order by sal,deptno desc;(sal升序,septno降序)

   先按第一个字段排序,当第一个字段相同时,按照第二个字段排序。

  

   select······limit offset_start, row_count;

   offset_start表示起始偏移量,默认值为0。 row_count表示显示的行数。

   例如:select * from emp order by sal limit 1,3;

   显示前3条记录,起始偏移量为1,从第二条记录开始显示。

   order  by 和limit 通常一起使用来控制记录的分页显示

  

5、聚合

   很多情况下,用户需要一些汇总操作,例如统计整个公司的人数或者每个部门的人数。

   语法:

   select 字段1,字段2.。。函数名 from 表名  where where_condition1  group by  字段11,字段12 with rollup  having  where_condition2; 

   函数名表示要做的聚合操作,就是聚合函数,常用的有sum(求和)、count(*)(记录数)、max(最大值)、min(最小值)。

   group by 关键字表示要进行分类聚合的字段、

   having 关键字表示对分类后的结果在进行条件的过滤。

   having和where的区别是having是对聚合后的结果进行条件的过滤,而where是在聚合前就对记录进行过滤,如果逻辑允许,我们可以用where先进行过滤,这样结果集变小了,将对聚合的效率大大的提高,最后在根据逻辑看是否用having进行再过滤。

select sum(sal), max(sal), min(sal) from emp;

 

6、表连接

   当需要同时显示多个表中的字段时,就可以用表连接来实现这样的功能。

   从大类上分,表连接分为内连接和外连接,它们之间的最主要的区别是内连接仅选出两张表中互相匹配的记录,而外连接会会选出其他不匹配的记录。我们最常用的是内连接。

   例如:查询出所有雇员的名字和所在的部门名称,因为雇员名称和部门分别放在表emp和表dept中,因此,需要使用表连接来进行查询。

   select ename, deptname from emp, dept where emp.deptno=dept.deptno;

 (ename是表emp中的字段,deptname是dept表中的字段)

 

  外连接又分为左链接和右连接(关键字left join和 right join

   连接:包含所有的边表中的记录甚至是边表中没有和他匹配的记录。

   连接:包含所有的边表中的记录甚至是边表中没有和他匹配的记录。

   例如:select ename, deptname from emp left join dept on emp.deptno=dept.deptno;

         select ename, deptname from dept right join emp on emp.deptno=dept.deptno;

         ename是表emp中的字段,deptname是dept表中的字段。 就是包含表emp中的所有记录。     以上两条语句等价。

 

7、字查询

   在某些情况下,当进行查询的时候,需要的条件是另外一个select语句的结果,这个时候,就要用到子查询。用于子查询的关键字主要包括in、not in、=、!=、exists、not exists等。

    

   select * from emp where deptno in (select deptno from dept);

   (表示的意思就是就表emp中的所有记录,除去dept表对应的部门不存在的删掉。)

 

 在某些情况下,子查询可以转化成表连接。例如,上面的语句可以写成:

   select emp.* from emp, dept where emp.deptno=dept.deptno;

 

8、记录联合

   我们经常会碰到这样的应用,将两个表的数据按照一定的查询条件查询出来后,将结果合并到一起显示出来。这个时候,就需要用到union和 union all关键字来实现这样的功能。union和union all的区别:union all 是把结果集合并在一起,而union是将union all后的结果进行一次distict,去除重复记录。

   select * from table1  union| union all select * from table2;

   例如:

   ① select deptno from emp  union all select deptno from dept;

   ② select deptno from emp  union select deptno from dept;

   ①中的记录将会有重复记录,②中没有重复记录。

 

相关专题

更多
苹果官网入口直接访问
苹果官网入口直接访问

苹果官网直接访问入口是https://www.apple.com/cn/,该页面具备0.8秒首屏渲染、HTTP/3与Brotli加速、WebP+AVIF双格式图片、免登录浏览全参数等特性。本专题为大家提供相关的文章、下载、课程内容,供大家免费下载体验。

115

2025.12.24

拼豆图纸在线生成器
拼豆图纸在线生成器

拼豆图纸生成器有PixelBeads在线版、BeadGen和“豆图快转”;推荐通过pixelbeads.online或搜索“beadgen free online”直达官网,避开需注册的诱导页面。本专题为大家提供相关的文章、下载、课程内容,供大家免费下载体验。

82

2025.12.24

俄罗斯搜索引擎yandex官方入口地址(最新版)
俄罗斯搜索引擎yandex官方入口地址(最新版)

Yandex官方入口网址是https://yandex.com。用户可通过网页端直连或移动端浏览器直接访问,无需登录即可使用搜索、图片、新闻、地图等全部基础功能,并支持多语种检索与静态资源精准筛选。本专题为大家提供相关的文章、下载、课程内容,供大家免费下载体验。

546

2025.12.24

JavaScript ES6新特性
JavaScript ES6新特性

ES6是JavaScript的根本性升级,引入let/const实现块级作用域、箭头函数解决this绑定问题、解构赋值与模板字符串简化数据处理、对象简写与模块化提升代码可读性与组织性。本专题为大家提供相关的文章、下载、课程内容,供大家免费下载体验。

150

2025.12.24

php框架基础知识汇总
php框架基础知识汇总

php框架是构建web应用程序的架构,提供工具和功能,以简化开发过程。选择合适的框架取决于项目需求和技能水平。实战案例展示了使用laravel构建博客的步骤,包括安装、创建模型、定义路由、编写控制器和呈现视图。本专题为大家提供相关的文章、下载、课程内容,供大家免费下载体验。

20

2025.12.24

Word 字间距调整方法汇总
Word 字间距调整方法汇总

本专题整合了Word字间距调整方法,阅读下面的文章了解更详细操作。

47

2025.12.24

任务管理器教程
任务管理器教程

本专题整合了任务管理器相关教程,阅读下面的文章了解更多详细操作。

7

2025.12.24

AppleID格式
AppleID格式

本专题整合了AppleID相关内容,阅读专题下面的文章了解更多详细教程。

12

2025.12.24

csgo视频观看入口合集
csgo视频观看入口合集

本专题整合了csgo观看入口合集,阅读下面的文章了知道更多入口地址。

371

2025.12.24

热门下载

更多
网站特效
/
网站源码
/
网站素材
/
前端模板

精品课程

更多
相关推荐
/
热门推荐
/
最新课程
MySQL 教程
MySQL 教程

共48课时 | 1.4万人学习

MySQL 初学入门(mosh老师)
MySQL 初学入门(mosh老师)

共3课时 | 0.3万人学习

简单聊聊mysql8与网络通信
简单聊聊mysql8与网络通信

共1课时 | 771人学习

关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号