正在看的ORACLE教程是:Oracle SQL性能优化系列学习三。8. 使用DECODE函数来减少处理时间 使用DECODE函数可以避免重复扫描相同记录或重复连接相同的表. 例如: SELECT COUNT(*),SUM(SAL) FROM EMP WHERE DEPT_NO = 0020 AND ENAME LIKE ‘SMITH%’; SELECT COUNT(*),SUM(SAL) FROM EMP WHERE DEPT_NO = 0030 AND ENAME
rollup函数
本博客简单介绍一下oracle分组函数之rollup的用法,rollup函数常用于分组统计,也是属于oracle分析函数的一种
环境准备
create table dept as select * from scott.dept;
create table emp as select * from scott.emp;
业务场景:求各部门的工资总和及其所有部门的工资总和
这里可以用union来做,先按部门统计工资之和,然后在统计全部部门的工资之和
select a.
本文实例讲述了Python简单生成8位随机密码的方法。分享给大家供大家参考,具体如下:
#!/usr/bin/env python
# -*- coding: utf-8 -*-
import random
import string
#第一种方法
seed = 1234567890abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ!#$%^&*()_+=-
sa = []
for i in range(8):
sa.append(ra
Oracle查询语句
select * from scott.emp ;
1.–dense_rank()分析函数(查找每个部门工资最高前三名员工信息)
select * from (select deptno,ename,sal,dense_rank() over(partition by deptno order by sal desc) a from scott.emp) where a<=3 order by deptno asc,sal desc ;
结果:
–rank()分析
数据排序 asc、desc
1、单一字段排序order by 字段名称
作用: 通过哪个或哪些字段进行排序
含义: 排序采用 order by 子句,order by 后面跟上排序字段,排序字段可以放多个,多个采用逗号间隔,order by默认采用升序(asc),如果存在 where 子句,那么 order by 必须放到where 语句后面。
(1)、按照薪水由小到大排序(系统默认由小到大)
例如: select ename,sal from emp order by sal;
二、SQL基础-表的修改
1.更改表名
ALTER TABLE [RENAME [TO] ];
#例如:将deptname表的表名改为dept
ALTER TABLE deptname RENAME dept;
2.字段改名
ALTER TABLE [CHANGE ];
#例如:将 salgrade 表中 sal 字段改名为 hisal
ALTER TABLE salgrade CHANGE sal hisal int(10);
3.增加表字段
ALTER TABLE [ADD
1 基本查询回顾 查询工资高于500或岗位为MANAGER的雇员,同时还要满足他们的姓名首字母为大写的J
select * from EMP where (sal>500 or job='MANAGER') and ename like 'J%';
按照部门号升序但雇员的工资降序排序
select * from EMP order by deptno, sal desc;
使用年薪进行降序排序
select ename, sal*12+ifnull(comm,0) as '年薪' fro