基础SQL语法语句大全(一篇学会所有SQL语句)
基础SQL语法语句大全(一篇学会所有SQL语句)
如:select distinct name from student; 如:select name,salary from employee where deptno = 3; 如:select * from employees where deptno = 3 and salary>-5000;(两个条件同时满足) select * from employees where (deptno =3 or depton =1) and salary < 5000; 如:select * from dept where loc like '一楼%';(表示查找loc字段中以一楼开头的数据,显示满足条件的所有字段对应的信)。类似的还有%一楼%(数据中包含一楼的),%一楼(数据以一楼结尾的) 如:select name from employees where empno not in (3,5); select name from employees where deptno in (select depton from dept where loc like '一楼%'); 如:select name from employees where hiredate between '2013-01-01' and '2013-12-31'; 否定句:select name from employees where hiredate not between '2013-01-01' and '2013-12-31'; 如:select name, hiredate from employees order by hiredate;(查询employees表中的name,hiredate字段的所有数据,按照hiredate字段进行默认的降序排序) 注意:order by 要写在条件或分组的后面,因为要先查询出需要的数据,才会对需要的数据进行排序。 如:update employees set deptno = 2,manager = 4 where empno =4;(更新employees表中empno=4的相应字段的数据) 如:delete from employees where empno = 9;(删除employees表中empno=9的那行数据) 如:create index in_name on employees(name);(在employees表中的name字段上创建一个名为in_name的索引) 如:创建一个名为employees_2015的视图,视图内容为hiredate<'2015-01-01'的name、salary字段的数据 create view employees_2015 as select name,salary from employees where hiredate < '2015-01-01';
注意:修改视图的数据,本质上是从底层进行修改,所以修改视图的数据,原始数据也被修改了。 如:select * from employees where manager is not null;
如:select name 姓名, salary 工资 from employees e;(表示设置字段name的别名为姓名,salary的别名为工资,表employees的别名为e) 注意:设置别名还可以用于函数中,如: select count(*) 总人数 from employees; 内连接:两个表同时满足条件的数据,即交集。 左连接:左表中所有数据+右表中符合条件的数据。 右连接:右表中所有数据+左表中符合条件的数据。 如: 内连接:select name,title from employees inner join managers on employees.empno = managers.empno; 左连接:select name,title from employees left join managers on employees.empno = managers.empno; 内连接:select name,title from employees right join managers on employees.empno = managers.empno; 也就是嵌套查询 如:select name from employees where deptno in (select deptno from dept where loc like '二楼%'); select * from managers where empno not in (select empno from employees); SQL 中五个常用函数:count()、max()、min()、avg()、sum();
1)案例实操:
(1)计算 emp 表每个部门的平均工资 hive (default)> select t.deptno, avg(t.sal) avg_sal from emp t group by t.deptno; (2)计算 emp 每个部门中每个岗位的最高薪水 hive (default)> select t.deptno, t.job, max(t.sal) max_sal from emp t group by t.deptno, t.job; 注意:having和where的功能差不多,但处理的对象不同,having专门处理group by分组的数据,通常情况下,有group by的语句中才会有having。 1 ) having 与 where 不同点 (1) where 后面不能写分组函数,而 having 后面可以使用分组函数。 (2) having 只用于 group by 分组统计语句。 2 )案例实操 (1)求每个部门的平均薪水大于 2000 的部门 求每个部门的平均工资 hive (default)> select deptno, avg(sal) from emp group by deptno; 求每个部门的平均薪水大于 2000 的部门 hive (default)> select deptno, avg(sal) avg_sal from emp group by deptno having avg_sal > 2000;参考b站视频:38分钟学会SQL语句sql_哔哩哔哩_bilibili
最新文章
- 铜元网
- 产品试装申请范文(热门28篇)
- 大班工作计划政治思想(通用41篇)
- 12zg313
- 2022年为桥工作计划(共12篇)
- 2022世界杯法国vs丹麦谁厉害 2022世界杯法国vs丹麦预测分析
- 质量守恒定律教案
- 献给爱丽丝简谱
- 公共服务大楼项目概况范文(15篇)
- 漆包线规格表
- 国家禁毒部门工作计划范文(热门48篇)
- 施工管理个人工作总结(71篇)
- 扶危济困工作计划范文(共88篇)
- 代建及租赁合同范本下载(实用28篇)
- 幸福教育个人简介范文(汇总58篇)
- 乌有先生传
- 策划工作计划模板免费教师(合集18篇)
- 大同农村垃圾分类工作计划(通用25篇)
- 诚信与担当的范文大全(优选11篇)
- 畜禽专家组工作计划(汇总40篇)