mysql10._mysql10 select语句详解

知识点:

。select基本语法

。数学符号条件

。AND OR IN

。通配符

。排序

。SQL内置函数和计算

。子查询与连接查询

下载github的资源

git clone https://github.com/shiyanlou/SQL4.git

在msyql中加载数据(数据库名必须不存在,否则修改或删掉)

source /home/shiyanlou/Desktop/SQL4/MySQL-04-01.sql;

6b5fbce161a7f41a74a818e8baadd214.png

向数据库插入数据

source /home/shiyanlou/Desktop/SQL4/MySQL-04-02.sql;

553392a50afdbb5bb119d70d1f52dc9e.png

select 要查询的列名 from 表名 where 限制条件

1、查表中所有数据

select * from employee;

2、查指定的列的所有数据

select name,age from employee;

3、数学符号条件,用(=,,>=,<=)

select name,age from employee where age>25;

4、用表中数据当条件

select name,age,phone from employee where name='Mary';

5、and 和or

ea11d35d4b231b35e6f27926c5e7b9f7.png

select * from employee where age>25 and age<30;

6、in"在"  和 not in "不在"

select * from employee where in_dpt not in ('dpt1','dpt3');

7、通配符

用于实现模糊查询,常用于搜索功能中。

和like联用通配符代表未知字符。_代表一个未知字符,%代表不定个未知字符。

select * from employee where phone like '1101__';#用_代表忘记的字符

select * from employee where phone like '1101%';#用%匹配所有

8、对结果排序

oder by  asc升序 ,oder by desc降序。

select * from employee order by salary desc;#注意:排序时不加where

9、内置函数和计算

函数名

count

sum

avg

max

min

作用:

计数

求和

求平均值

最大值

最小值

count用于任何数据类型(因为它只是计数)。

sum/avg只能对数据类型做计算。

max和min可用于数值、字符串、或者日期数据类型。

使用as可以给值重命名

select max(salary) as max_salary,min(salary) as min_salary from employee;

9、子查询

SELECT of_dpt,COUNT(proj_name) AS count_project FROM project GROUP BYof_dptHAVING of_dpt IN(SELECT in_dpt FROM employee WHERE name='Tom');

上面代码包含两个 SELECT 语句,第二个 SELECT 语句将返回一个集合的数据形式,

然后被第一个 SELECT 语句用 in 进行判断。

HAVING关键字可以的作用和WHERE 是一样的,都是说明接下来要进行条件筛选操作。

区别在于 HAVING 用于对分组后的数据进行筛选

10、连接查询

连接的基本思想是把两个或多个表当作一个新的表来操作。用到(join)

SELECTid,name,people_numFROMemployee,departmentWHERE employee.in_dpt =department.dpt_nameORDER BY id;

另一个连接语句格式是使用 JOIN ON 语法,刚才的语句等同于:

SELECTid,name,people_numFROM employee JOINdepartmentON employee.in_dpt =department.dpt_nameORDER BY id;

练习:未解决啊

d1401b0e3e325eef73d9987642e992a7.png

mysql> SELECT name, people_num, COUNT(proj_name) AScount_project-> FROMemployee, department, project-> WHERE in_dpt = dpt_name AND of_dpt =dpt_name-> GROUP BYname, people_num;+------+------------+---------------+

| name | people_num | count_project |

+------+------------+---------------+

| Jack | 12 | 2 |

| Mary | 12 | 2 |

| Jim | 11 | 1 |

| Alex | 11 | 1 |

| Tom | 15 | 2 |

| Rose | 10 | 1 |

+------+------------+---------------+

6 rows in set (0.00 sec)

前两行不必说了,从三张表选择三列数据;第三行设置三列数据的关系,dpt_name 是唯一值,of_dpt 和 in_dpt 的值必取自 dpt_name 这列,它们应该有外键关系,但不是必须的;第四行分组,分组不可或缺,否则会出现无意义的数据(一般来说连接查询语句中有 COUNT 就会有 GROUP BY),报一个 sql_mode 引起的错误,至于为什么选择 name 和 people_num 分组,大家可以试一下同时去掉 COUNT 和 GROUP BY 语句,看看其中的差异即可理解。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
资源包主要包含以下内容: ASP项目源码:每个资源包中都包含完整的ASP项目源码,这些源码采用了经典的ASP技术开发,结构清晰、注释详细,帮助用户轻松理解整个项目的逻辑和实现方式。通过这些源码,用户可以学习到ASP的基本语法、服务器端脚本编写方法、数据库操作、用户权限管理等关键技术。 数据库设计文件:为了方便用户更好地理解系统的后台逻辑,每个项目中都附带了完整的数据库设计文件。这些文件通常包括数据库结构图、数据表设计文档,以及示例数据SQL脚本。用户可以通过这些文件快速搭建项目所需的数据库环境,并了解各个数据表之间的关系和作用。 详细的开发文档:每个资源包都附有详细的开发文档,文档内容包括项目背景介绍、功能模块说明、系统流程图、用户界面设计以及关键代码解析等。这些文档为用户提供了深入的学习材料,使得即便是从零开始的开发者也能逐步掌握项目开发的全过程。 项目演示与使用指南:为帮助用户更好地理解和使用这些ASP项目,每个资源包中都包含项目的演示文件和使用指南。演示文件通常以视频或图文形式展示项目的主要功能和操作流程,使用指南则详细说明了如何配置开发环境、部署项目以及常见问题的解决方法。 毕业设计参考:对于正在准备毕业设计的学生来说,这些资源包是绝佳的参考材料。每个项目不仅功能完善、结构清晰,还符合常见的毕业设计要求和标准。通过这些项目,学生可以学习到如何从零开始构建一个完整的Web系统,并积累丰富的项目经验。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值