`
wengsibo
  • 浏览: 83466 次
  • 性别: Icon_minigender_1
  • 来自: 福建
社区版块
存档分类
最新评论

查询分区并按要求分组

SQL 
阅读更多
	select a.*
  		from (select SCORE_ID,EX_EB_ID,EB_NAME,ss.ADMISSION_TICKET,SCOPE,EXAM_TIME,UPDATE_TIME,
               ei.examinee_id,ei.examinee_name, ei.register_dept,ei.dept_code,ei.register_station, ei.station_code,
               row_number() OVER(partition by dept_code, ei.station_code ORDER BY ss.scope desc) a_rownum
          from TM_STUDENT_SCORE ss
          left join tm_examinee_info ei on ss.admission_ticket =ei.admission_ticket) a
 		where a_rownum <= 3


这条SQL语句的作用:
计算出考生的成绩和考生资料,并按职务来分组,并得出该职务的前3名,

难理解的地方:
1.row_number() OVER(partition by dept_code, ei.station_code ORDER BY ss.scope desc) a_rownum
这句是按dept_code, ei.station_code分组,并按ss.scope 升序 最后命名为:a_rownum
分享到:
评论

相关推荐

    表视图的分组分区和索引分区

    在数据库管理领域,表视图的分组分区和索引分区是提高数据处理效率和查询性能的重要技术。这里我们将深入探讨这两个概念,并结合实例进行解释。 首先,让我们了解什么是分区。分区是将一个大型表或索引分成较小、更...

    SQL2005分区表详解

    例如,`MineDateRange`函数按日期范围划分数据,将值右边界定义为分区边界。 3. **创建分区方案**:指定如何将分区函数映射到文件分组。在示例中,`Mine_Orders`方案将`OrderDate`列的值映射到相应的文件分组。 4....

    SQLserver 实现分组统计查询(按月、小时分组)

    最后对结果进行分组并求和。 2. **按小时分组统计**: 对于按天内小时进行分组统计,我们同样需要创建一个包含0到23所有小时的临时表。然后,利用`DATEDIFF`函数检查访问时间与设定日期的差值是否为0,以确保只...

    oracle创建分区表.pdf

    3. 创建分区表:使用CREATE TABLE语句创建了一个名为guestbook的新分区表,并且指定按时间字段分区。每个分区被分配到之前创建的表空间,并且设置了初始存储参数。创建分区表时,通过PARTITION BY RANGE子句定义了...

    SQL Server 2005分区表技术的研究与实现.pdf

    而从SQL Server 2000开始,增加了对分区视图的数据修改支持,并改善了查询性能。SQL Server 2005进一步提升了分区性能,并简化了分区的管理、开发和使用。 分区的实现步骤主要包含以下几个阶段: 1. 确定分区键和...

    为数据项设计分组.rar

    这些模式通过创建汇总表或事实表来简化查询,将频繁使用的分组信息预先计算并存储起来。 在SQL语言中,GROUP BY语句是实现数据项分组的关键。它允许我们对指定列进行聚合函数(如SUM、COUNT、AVG、MAX、MIN)操作,...

    Oracle 执行计划、表分区

    - **分区键的选择**:选择频繁出现在查询条件中的列作为分区键,可有效利用分区消除。 5. **实例分析** - `Oracle数据库(执行计划)第6讲.ppt`可能包含了讲解执行计划的第六部分内容,包括更深入的案例分析和技巧...

    Oracle数据库使用分组函数来对数据进行聚集

    Oracle数据库使用分组函数来对数据进行聚集

    Oracle实现对查询结果每N条再次分组博客所用数据库

    标题中的“Oracle实现对查询结果每N条再次分组”是指在Oracle数据库中进行数据处理时,使用SQL语句对查询结果进行分组,而这里的“每N条再次分组”通常指的是使用GROUP BY子句配合ROW_NUMBER()、PARTITION BY等函数...

    数据库中的分组查询及数据筛选

    在数据库管理中,分组查询和数据筛选是极为重要的操作之一,它们能够帮助我们从大量的数据中提取出有用的信息,并对这些信息进行有效的分析。本文将详细介绍如何利用SQL语言来进行分组查询及数据筛选。 #### 一、...

    Oracle系列_分区

    在Oracle中,"分区"是一项重要特性,它将一个大表分成逻辑上相关的小块,每个块可以独立管理和操作,从而提高了数据访问效率,简化了维护工作,并有助于优化性能。 分区主要分为四种类型: 1. **范围分区**:基于一...

    Fastdfs 添加分组1

    3. 清理数据:删除配置文件 `storage2.conf`,并清空 Storage 的数据和存储目录,如 `rm -rf storage2.conf` 和 `rm -rf fastdfs2/`。 4. 重启 Tracker:执行 `service fdfs_trackerd restart` 使 Tracker 识别到...

    SQL中分组排序问题

    - `ORDER BY`则是定义了在每个分区内的行逻辑顺序,我们用`E.zpcj DESC`来表示按总评成绩降序排列。 完整的查询语句如下: ```sql SELECT LEFT(O.xq, 9) AS 学年, RIGHT(O.xq, 2) AS 学期, O.kh AS 课号, E....

    桌面分区

    “Fences”是一款桌面管理软件,它允许用户在桌面上创建可自定义的区域,将图标分组并隐藏在这些区域内。例如,你可以创建一个“工作”分区来存放与工作相关的程序,另一个“娱乐”分区来存放游戏和其他休闲应用。这...

    Oracle表分区

    2. **列表分区**:根据列的特定值列表进行分区,适用于列值有明确分组的情况,如国家代码或产品类别。 3. **哈希分区**:通过哈希函数对行进行分区,使得相同的键值被分配到相同的分区,通常用于均匀分布数据。 4....

    16、MapReduce的基本用法示例-自定义序列化、排序、分区、分组和topN

    在MapReduce编程模型中,开发者通常需要处理一系列关键任务,包括数据序列化、排序、分区、分组以及计算TopN值。以下将详细介绍这些概念及其在Hadoop环境中的实现。 一、自定义序列化 在MapReduce中,数据通常以...

    Java分区功能详解.pdf

    // 分区根据是否为素食,然后在每个分区中再根据热量是否超过500卡路里进行分组 menu.stream().collect(partitioningBy(Dish::isVegetarian, partitioningBy(d -&gt; d.getCalories() &gt; 500))); ``` 在性能优化方面,...

    数据库分区及索引.pdf

    水平分区,也就是数据行的分区,通过选定的属性值将表中的数据行划分到不同的分组中,每一分组内的数据集中在一个或多个物理分区上。以年份为例,一个包含十年发票记录的表可以被分割为十个分区,每个分区包含一年的...

    相容信道组的信道配置实现

    本文将深入探讨在C语言环境下,如何实现相容信道组的信道配置,具体包括分区分组配置法和等频距配置法。 首先,我们来理解什么是“相容信道组”。在无线通信系统中,不同的信道可能存在相互干扰。相容信道组是指一...

    db2DB2 V9表分区

    DB2 优化器能够识别并忽略与查询无关的分区,从而加快处理速度。 表分区提供了几个关键优势: 1. **性能提升**:通过分区,可以避免扫描不相关数据,只处理需要的部分,从而提高查询效率。 2. **维护简化**:对单个...

Global site tag (gtag.js) - Google Analytics