因为我自己复习这里的时候是在实验楼平台,所以这里直接拿实验楼的截图来做笔记了。
1.首先是内置函数和计算
函数名 | count | sum | avg | max | min |
作用 | 计数 | 求和 | 平均 | 最大值 | 最小值 |
SELECT MAX(salary) AS max_salary,MIN(salary) FROM employee;
这里的AS关键字是给前面的max查到的东西重命名(列名)而后面的min查到的没有重命名。
显示结果如下
2.子查询
有时我们需要处理多个表才能获得所需的信息。例如:想要知道名为 "Tom" 的员工所在部门做了几个工程。员工信息储存在 employee 表中,但工程信息储存在project 表中。
SELECT of_dpt,COUNT(proj_name) AS count_project FROM project WHERE of_dpt IN (SELECT in_dpt FROM employee WHERE name='Tom')
3.连接查询
在处理多个表的时候,子查询只有在结果来自一个表的时候才有用,但是如果需要显示两个或者多个表中的数据,就要用到连接查询。连接查询有两种方法。
第一种是把两个或者多个表当做一个新的表来操作,如下。
SELECT id,name,people_num FROM employee,department WHERE employee.in_dpt = department.dpt_name ORDER BY id;
另一种方法是使用JOIN ON语法。刚才的语句等同于
SELECT id,name,people_num FROM employee JOIN department ON employee.in_dpt = department.dpt_name ORDER BY id;