`
feigme
  • 浏览: 155522 次
  • 性别: Icon_minigender_1
  • 来自: 球面世界
社区版块
存档分类
最新评论

Oracle SQL列出key所有的values

    博客分类:
  • SQL
阅读更多
-- 0. Create demo table
CREATE TABLE test (
PROD_CAT VARCHAR2(10),
PROD_NO VARCHAR2(15)
);

-- 1. Create demo data
BEGIN
INSERT INTO test (PROD_CAT,PROD_NO) VALUES ('A','1');
INSERT INTO test (PROD_CAT,PROD_NO) VALUES ('A','2');
INSERT INTO test (PROD_CAT,PROD_NO) VALUES ('A','3');
INSERT INTO test (PROD_CAT,PROD_NO) VALUES ('B','2');
INSERT INTO test (PROD_CAT,PROD_NO) VALUES ('A','4');
INSERT INTO test (PROD_CAT,PROD_NO) VALUES ('B','1');
INSERT INTO test (PROD_CAT,PROD_NO) VALUES ('A','6');
INSERT INTO test (PROD_CAT,PROD_NO) VALUES ('A','7');
INSERT INTO test (PROD_CAT,PROD_NO) VALUES ('B','5');
INSERT INTO test (PROD_CAT,PROD_NO) VALUES ('B','8');
INSERT INTO test (PROD_CAT,PROD_NO) VALUES ('C','0');
INSERT INTO test (PROD_CAT,PROD_NO) VALUES ('D','1');
INSERT INTO test (PROD_CAT,PROD_NO) VALUES ('C','2');
INSERT INTO test (PROD_CAT,PROD_NO) VALUES ('D','3');
INSERT INTO test (PROD_CAT,PROD_NO) VALUES ('D','7');
COMMIT;
END;

-- 2. Use Oracle Analytic Function and Hierarchical Queries
SELECT PROD_CAT, max(substr(PROD_NO, 2)) PROD_NO
  FROM (SELECT PROD_CAT, sys_connect_by_path(PROD_NO, ',') PROD_NO
          FROM (SELECT PROD_CAT,
                       PROD_NO,
                       PROD_CAT || rn rchild,
                       PROD_CAT || (rn - 1) rfather
                  FROM (SELECT test.PROD_CAT,
                               test.PROD_NO,
                               row_number() over(PARTITION BY test.PROD_CAT ORDER BY test.PROD_NO) rn
                          FROM test))
        CONNECT BY PRIOR rchild = rfather
         START WITH rfather LIKE '%0')
 GROUP BY PROD_CAT ORDER BY 1;
 

 

分享到:
评论

相关推荐

    oraclesql 学习资料

    ### Oracle SQL 学习资料详解 #### 一、Oracle SQL 概述 Oracle SQL 是 Oracle 数据库的标准查询语言,用于管理、检索和处理 Oracle 数据库中的数据。它提供了丰富的功能来执行各种数据库操作,包括数据定义(如...

    DBA对Oracle SQL编写规范的总结

    - **规范要求**:在SELECT语句中禁止使用“*”来选取所有列,而应明确列出所需的列。这样可以提高查询性能,减少网络传输的数据量。 - **示例**: ```sql SELECT ID, NAME, AGE FROM EMPLOYEE; ``` ##### 2.7 ...

    ORACLE常用SQL语句大全.pdf

    Oracle 常用 SQL 语句大全 本文档总结了 Oracle 中常用的 SQL 语句,包括数据库的创建、删除、备份、表的创建、删除、修改、索引的创建、视图的创建等基本操作,以及一些高级查询运算符的使用。 一、数据库操作 ...

    oracle sql de

    标题“Oracle SQL DE”可能指的是Oracle数据库中的SQL Developer工具,这是一个用于管理Oracle数据库的集成开发环境(IDE)。在这个环境中,用户可以编写、测试和调试SQL和PL/SQL代码,进行数据查询、表管理以及...

    ORACLE 教程.SQL学习

    Oracle数据库是全球广泛使用的大型关系型数据库管理系统,其SQL(结构化查询语言)是与Oracle交互、管理和操作数据的核心工具。本教程旨在深入探讨Oracle SQL的学习,帮助你掌握这一强大的数据库系统。 首先,理解...

    Beginning Oracle SQL

    ### Oracle SQL基础知识详解 #### 一、书籍简介与目标读者 《Beginning Oracle SQL》是一本由Lex de Haan、Tim Gorman、Karen Morton、Daniel Fink和Inger Jorgensen共同编写的关于Oracle SQL的基础教程。该书由...

    Oracle sql 语句集锦

    根据给定的文件信息,以下是对Oracle SQL语句集锦中的关键知识点的详细解析: ### Oracle SQL基础操作 #### 数据定义语言(DDL) - **创建表(Create Table)**: `CREATE TABLE`语句用于在数据库中创建一个新的表...

    全国省市区所对应的sql文件--oracle版

    本资源是针对Oracle数据库的SQL文件,用于填充全国省市区的数据。Oracle数据库是全球广泛使用的大型关系型数据库系统,它支持复杂的数据类型和高级的数据库管理功能。 在使用这个SQL文件之前,你需要先在你的Oracle...

    oracle sql要求

    【Oracle SQL要求】主要涉及了Oracle数据库的基本操作,包括数据表的创建、数据的插入、删除和更新等核心概念。以下是对这些知识点的详细说明: 1. **Oracle数据库开发环境**: Oracle提供了多种数据库管理工具,...

    oracle常用SQL语句(汇总版).docx

    Oracle 常用 SQL 语句汇总 Oracle 是一个功能强大且复杂的关系数据库管理系统,它提供了多种 SQL 语句来管理和操作数据库。在本文中,我们将详细介绍 Oracle 中常用的 SQL 语句,包括数据控制语句(DML)、数据定义...

    Oracle PL/SQL实例精解 数据库建立代码

    Oracle PL/SQL是一种强大的编程语言,它结合了SQL的数据库操作能力和PL/SQL的结构化编程特性,使得数据库开发者能够创建复杂的应用程序和数据库逻辑。在"Oracle PL/SQL实例精解 数据库建立代码"中,我们将深入探讨...

    Oracle的SQL语法大全

    Oracle SQL是用于管理和操作Oracle数据库的关键工具,涵盖了数据查询、数据操纵、数据定义等多种功能。以下是对Oracle SQL语法的详细解析: **一、数据控制语句 (DML)** 1. **INSERT**: 插入数据到表中。有两种...

    oracle四大宝典之1:Oracle Sql基础

    "Oracle四大宝典之1:Oracle Sql基础"显然是一份深入浅出的Oracle SQL学习资料,旨在帮助初学者掌握Oracle数据库的基础操作。在本文中,我们将详细探讨Oracle SQL的基础知识,包括其重要概念、数据类型、查询语句、...

    省市县oracle数据库sql

    从给定的文件信息中,我们可以提取到关于Oracle数据库中SQL操作的重要知识点,特别是与创建表、定义主键约束以及插入数据相关的操作。下面将详细解释这些知识点。 ### 创建表 在Oracle数据库中,`CREATE TABLE`...

    SQLSERVER到ORACLE的数据库迁移

    ### SQL Server到Oracle数据库迁移详解 #### 一、引言 随着企业的发展和技术的更新换代,企业常常需要对原有的数据库系统进行迁移或升级。本文将详细介绍如何使用Java语言实现从SQL Server到Oracle数据库的数据...

    数据库自学笔记-SQL

    在SQL自学笔记中,我们将基于《Oracle 11g 入门到精通》这本书来深入理解SQL的各个重要概念。 首先,SQL主要分为四个核心部分: 1. 数据定义功能(DDL,Data Definition Language):这是SQL用于创建、修改和删除...

    oracle-SQL笔记

    Oracle SQL是用于管理和操作Oracle数据库的关键工具,涵盖了数据查询、数据操纵、数据定义以及数据控制等多个方面。在本文中,我们将深入探讨Oracle SQL中的数据控制语句(DCL)、数据定义语句(DDL)以及一些基本的...

    Oracle_PL-SQL入门教程(经典)

    Oracle PL/SQL是一种在Oracle数据库管理系统中使用的编程语言,它结合了SQL的数据库查询功能和PL/SQL的程序设计元素,使得开发者能够编写复杂的数据库应用。这篇“Oracle PL-SQL入门教程(经典)”旨在帮助初学者掌握...

    SQL 语法基础入门(ORACLE)

    本文将深入浅出地探讨SQL语法基础,特别关注ORACLE环境下的应用。 一、SQL简介 SQL是关系型数据库管理系统的通用语言,用于执行查询、插入、更新和删除数据,以及创建和修改数据库结构。在ORACLE中,SQL被用来执行...

    oracle sql语句(除select语句)

    标题与描述概述的知识点主要集中在IT领域中的数据库管理方面,特别是Oracle SQL语句的应用,涵盖了数据操作语言(DML)、数据定义语言(DDL)以及数据控制语言(DCL)。以下是对这些知识点的详细阐述: ### 数据...

Global site tag (gtag.js) - Google Analytics