易截截图软件、单文件、免安装、纯绿色、仅160KB

[Oracle]高效的SQL语句之分析函数(三)

本系列文章导航
[Oracle]高效的SQL语句之分析函数(一)--sum()
[Oracle]高效的SQL语句之分析函数(二)--max()
[Oracle]高效的SQL语句之分析函数(三)--row_number() /rank()/dense_rank()
[Oracle]高效的SQL语句之分析函数(四)--lag()/lead()
有些时候我们希望得到指定数据中的前n列,示例如下:
得到每个部门薪水最高的三个雇员:
先创建示例表
create table emp
as
select * from scott.emp;
alter table emp
add constraint emp_pk
primary key(empno);
create table dept
as
select * from scott.dept;
alter table dept
add constraint dept_pk
primary key(deptno);
先看一下row_number() /rank()/dense_rank()三个函数之间的区别
 select emp.deptno,emp.sal,emp.empno,row_number() over (partition by deptno order by sal desc) row_number,  --1,2,3
  rank() over (partition by deptno order by sal desc) rank, --1,1,3
  dense_rank() over (partition by deptno order by sal desc) dense_rank from emp --1,1,2
结果如下:
10    5000.00    7839    1    1    1
10    2450.00    7782    2    2    2
10    1300.00    7934    3    3    3
20    3000.00    7788    1    1    1
20    3000.00    7902    2    1    1
20    2975.00    7566    3    3 &n


相关文档:

Java 执行 SQL 脚本文件

是拷贝的别人的,以备学习
package com.unmi.db;
import java.io.FileInputStream;
import java.io.InputStream;
import java.sql.Connection;
import java.sql.Statement;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;
/**
* 读取 SQL 脚本并执行
* @author Unmi
*/
pub ......

SQL SERVER使用事务日志恢复数据的实验

/*
使用事务日志恢复数据的实验
*/
--1.创建测试数据库
CREATE DATABASE Db_test
ON
( NAME = Db_test_DATA,
      FILENAME = 'c:\Db_test.mdf' )
LOG ON
( NAME = Db_test_LOG,
   FILENAME = 'c:\Db_test.ldf')
GO
--2.故障还原模型设置为full模型,默认的简单模型备份 ......

mysql的大批量导入数据sql语句的一点优化

大批量插入数据时 1,myisam表,可以先通过 alter table table_name disable keys;#先关闭表的索引检查,注意是非唯一索引! load data infile ‘/path/file’ into table table_name; alter table table_name anable keys;#再打开索引 可大大加快导入.还有可以设置bulk_insert_buffer_size值来提高插入速度 ......

[Oracle]高效的SQL语句之分析函数(一)

本系列文章导航
[Oracle]高效的SQL语句之分析函数(一)--sum()
[Oracle]高效的SQL语句之分析函数(二)--max()
[Oracle]高效的SQL语句之分析函数(三)--row_number() /rank()/dense_rank()
[Oracle]高效的SQL语句之分析函数(四)--lag()/lead()
实际应用中我们可以通过sum()统计出组中的总计或者是累加值,具体示例如下:
......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号