-- -- -- -- -- row_number rank dense_rank 3者区别-- -- -- -- --
-- Question_1: 男女成绩排行榜 http://www.iteye.com/topic/1029921
-- 不涉及并列排名(前3名)
select *
from (select id
,name
,gender
,grade
,row_number() over(partition by gender order by grade desc) row_number
from t_stu)
where row_number <= 3;
-- 涉及并列排名(并列排名后的下一记录不连续)
-- 1, 2, 2, 4
select id
,name
,gender
,grade
,rank() over(partition by gender order by grade desc) rank
from t_stu;
-- 涉及并列排名(并列排名后的下一记录连续)
-- 1, 2, 2, 3
select id
,name
,gender
,grade
,dense_rank() over(partition by gender order by grade desc) dense_rank
from t_stu;
-- -- -- -- -- connect by [prior] start with -- -- -- -- --
select * from t_dept tb;
-- Question_2: 部门2及其所有下级部门
select lpad(' ', 2 * (level - 1), ' ') || dept_id as dept_id
,parent_id
,dept_name
,amount
from t_dept
connect by parent_id = prior dept_id -- 找出所有PARENT_ID等于当前记录DEPT_ID的记录。
start with dept_id = 2;
-- Question_3: 部门2及其所有上级部门
select lpad(' ', 2 * (level - 1), ' ') || dept_id as dept_id
,parent_id
,dept_name
,amount
from t_dept
connect by prior parent_id = dept_id -- 左'上'右'下'
start with dept_id = 2;
select lpad(' ', 2 * (level - 1), ' ') || dept_id as dept_id
,parent_id
,dept_name
,amount
from t_dept
start with dept_id = 1
connect by parent_id = prior dept_id
and dept_id <> 3 -- 不包括部门3及其下属部门
;
select lpad(' ', 2 * (level - 1), ' ') || dept_id as dept_id
,parent_id
,dept_name
,amount
from t_dept
start with dept_id = 1
connect by parent_id = prior dept_id
order siblings by amount asc; -- 注意 order siblings by 用法
-- -- -- -- -- 分页 -- -- -- -- --
select *
from (select id
,name
,gender
,grade
,row_number() over(order by id) row_number
from t_stu)
where row_number between 5 and 10;
select *
from (select rownum rn, tb.* from (select * from t_stu) tb)
where rn between 5 and 10;
-- 性能高
select id, name, gender, grade
from (select id, name, gender, grade, rownum rn
from t_stu
where rownum <= 10)
where rn >= 5;
分享到:
相关推荐
综上所述,这份在线考试涉及到了 PL/SQL 的多个方面,包括但不限于使用 Oracle Application Express 创建 Web 应用程序、异常处理、PL/SQL 的适用范围、PL/SQL 的特点以及不同类型的 PL/SQL 代码块等。这些知识点...
关于sql的20个测试题
适合初学者使用,它比较的基础,有助于你打牢基础,如果你能把它做完,那你就基本掌握了查询的相关知识!
数据库题目收集_sql_quiz
"javascript-quiz"项目就是一个利用JavaScript构建的互动式测验,旨在帮助学习者检验和提升他们的JavaScript知识。这个测验可能是通过创建HTML页面来呈现问题,使用JavaScript处理用户交互,并可能结合CSS来实现视觉...
ssd3 practical quiz 5ssd3 practical quiz 5ssd3 practical quiz 5ssd3 practical quiz 5ssd3 practical quiz 5ssd3 practical quiz 5ssd3 practical quiz 5
Quiz 3可能涉及创建数据库模式、写SQL查询语句,或者处理数据库设计的问题。 7. **网络基础知识**:TCP/IP协议、HTTP协议、网络层次模型等。Quiz 3可能要求理解网络通信的基本原理,或者分析网络数据传输过程。 ...
3. **数据库管理**:Quiz 6可能包含SQL查询语言的使用,如SELECT语句、JOIN操作、子查询和索引的概念,以及关系数据库模型的设计原则。 4. **网络应用**:这可能涉及到TCP/IP协议栈、HTTP协议、客户端-服务器交互、...
10. **软件安全**:涉及到密码学、认证、授权、加密技术以及如何预防常见的安全漏洞,如SQL注入、XSS攻击等。 为了准备Quiz 4,学生应该复习这些主题,并确保理解每个概念的实际应用。同时,解答时需要遵循良好的...
https://www.w3schools.com/sql/sql_quiz.asp: Don't forget to take the quiz. Check out the amazing reference , may not be the full list, but good enough https://www.w3schools.com/sql/sql_ref_mysql.asp ...
第一章第二章2.5 重要(可能涉及一些计算)2.1 较重要(振幅//相位//频率//quiz 考过的香农·尼克斯特公式)2.2 2.3 2.6 简单了解2.4
ssd3 practical quiz 3ssd3 practical quiz 3ssd3 practical quiz 3ssd3 practical quiz 3ssd3 practical quiz 3ssd3 practical quiz 3ssd3 practical quiz 3
【SSD3 Quiz4 知识点详解】 SSD3,全称为Software System Development 3,是卡耐基梅隆大学面向对象程序设计的一门课程。Quiz 4作为该课程的重要组成部分,旨在检验学生对面向对象编程核心概念的理解,以及在实际...
【SSD3 Quiz9答案详解】 在卡耐基教程中的SSD3(Structured Systems Design, 第3阶段)Quiz9,我们关注的是系统设计与分析的关键概念。这个阶段的学习旨在提升学员对复杂系统的设计、实现和优化能力。Quiz9可能是对...
ssd3 practical quiz 5ssd3 practical quiz 5ssd3 practical quiz 5ssd3 practical quiz 5ssd3 practical quiz 5ssd3 practical quiz 5
"Practical Quiz 7"可能是一个关于SSD3技术的实践性测验,旨在测试学生或专业人士对这一领域知识的理解和应用能力。下面,我们将深入探讨SSD3相关的知识点: 1. **工作原理**:SSD3的核心是NAND闪存,它由存储单元...
9. **安全性与隐私**:了解基本的安全编程原则,如何预防SQL注入、XSS攻击,以及如何保护用户数据的隐私。 10. **法规与道德**:软件开发过程中的知识产权、数据保护法规,以及职业道德和责任。 每个文件名称...