http://www.eygle.com/archives/2006/09/use_any_function.html
SQL> SELECT deptno, ename,
2 ROW_NUMBER () OVER (PARTITION BY deptno ORDER BY sal DESC) seq
3 FROM emp;
DEPTNO ENAME SEQ
---------- ---------- ----------
10 KING 1
10 CLARK 2
10 MILLER 3
20 SCOTT 1
20 FORD 2
20 JONES 3
20 ADAMS 4
20 SMITH 5
30 BLAKE 1
30 ALLEN 2
30 TURNER 3
30 WARD 4
30 MARTIN 5
30 JAMES 6
14 rows selected.
再结合其他函数进行一下行列转换:
SQL> select deptno,
2 max(decode(seq,1,ename,null)) highest,
3 max(decode(seq,2,ename,null)) second,
4 max(decode(seq,3,ename,null)) third
5 from (
6 select deptno,ename,
7 row_number() over
8 (partition by deptno order by sal desc) seq
9 from emp)
10 where seq <=3 group by deptno
11 /
DEPTNO HIGHEST SECOND THIRD
---------- ---------- ---------- ----------
10 KING CLARK MILLER
20 SCOTT FORD JONES
30 BLAKE ALLEN TURNER
分享到:
相关推荐
在Oracle数据库中,行列转换是一项常用且强大的功能,它允许数据在不同的维度上进行转换,以便于数据分析和报告。本文将深入探讨Oracle中实现行列转换的几种方法,包括使用`UNION ALL`、`MODEL`子句以及集合类型(`...
下面我们将深入探讨Oracle中的行列转换技术。 首先,我们有`PIVOT`操作,它是Oracle 11g引入的新特性,用于将行数据转换为列数据。例如,假设我们有一个销售数据表,包含产品ID、年份和销售额三列。通过`PIVOT`,...
本文将深入解析一个Oracle行列转换的例子,通过详细解释SQL语句的构成及其背后的逻辑,帮助读者理解如何在Oracle中实现行列转换。 ### Oracle行列转换例子解析 #### SQL语句结构分析 给定的SQL语句主要分为几个...
【Oracle 行列转换实例】 在数据库管理中,有时我们需要将数据表的行与列进行转换,以便于数据分析和报表展示。Oracle 提供了一种高效的方法,即使用分析函数来实现这种行列转换。分析函数主要设计用于处理累计计算...
行列转换,sys_connect_by_path,row_number等函数的用法
本文档提供了Oracle中行列转换的六个常见案例及其具体实现方法。这些转换技巧对于提高数据库查询效率、简化数据处理流程等方面具有重要意义。通过上述示例的学习,读者可以更好地理解如何利用Oracle的内置功能来满足...
在Oracle数据库中,进行行列转换是一项常见的数据处理需求,尤其当数据存储格式与最终报告或分析所需的格式不一致时。这种转换技术可以帮助我们将表格中的行数据转换为列数据,反之亦然,从而使得数据能够更好地适应...
在Oracle数据库中,数据的行列转换是数据处理过程中的常见操作,尤其在数据分析、报表制作以及数据展示时显得尤为重要。本篇文章将详细讲解Oracle 10g中的行列转换技术,包括如何实现行转列和列转行。 首先,我们要...
在Oracle数据库中,有时我们需要将表格中的行转换为列或将列转换为行,这种操作被称为行列转换。这种转换对于数据分析、报表制作等场景非常有用。本文将详细介绍Oracle中如何进行行列转换,并提供实际的例子。 ####...
oracle知识列点 一个简单的行列转换例子,需要的可以看下
在Oracle数据库中,行列转换是一种常见的数据操作需求,主要用于改变数据的展示格式,使得数据能够更好地适应特定的分析或报告需求。本文将详细介绍如何在Oracle中实现行转列(即行列转换的一种)以及列转行的操作,...
常见的数据库面试关于行转列列转行的操作,方便你的面试,经常考到的
oracle行列转换示例,查询转换,有创表过程,数据,清晰明了
Oracle 行列转换总结 Oracle 行列转换是指在 Oracle 数据库中将行与列之间进行转换的操作。这种转换有六种情况:列转行、行转列、多列转换成字符串、多行转换成字符串、字符串转换成多列、字符串转换成多行。 1. ...
本文档将详细讲解Oracle数据库中的行列转换方法,并通过具体实例来说明每一种转换方式的应用场景。 #### 二、列转行 **2.1 使用 UNION ALL 实现列转行** 适用于Oracle 8i、9i、10g及以上版本。 - **步骤与示例**...
### Oracle 数据库中的行列转换详解 #### 一、引言 在处理复杂的数据查询与展示时,经常会遇到需要将数据库中的行数据转换成列数据的需求,这种操作通常被称为“行列转换”。例如,当我们想要汇总不同部门对各种...
本文将深入探讨Oracle中实现行列转换的几种方法。 首先,对于固定列数的行列转换,假设我们有一个学生成绩表,其中包含学生姓名、科目和分数。如果要将每个学生的各科成绩从多行展示转变为一行展示,可以使用Oracle...