`
hemin108
  • 浏览: 93814 次
  • 性别: Icon_minigender_1
  • 来自: 广州
社区版块
存档分类
最新评论

常用查询

 
阅读更多

表一:

name type
A1 02
A1 03
A2 02
A3 03
 表二:

name type02 type03
A1
A2
A3

将表一的结果转为表二有下面这几种方法。

--第一种方法

select t.code,

       t.name,

       decode(p1.type_code, '02', '是', '否') as 指标单位,

       decode(p1.type_code, '03', '是', '否') as 决算单位

 

  from base_unit t

  left join base_unit_type p1 on t.guid = p1.unit_guid

                                     and p1.type_code = '02'

  left join base_unit_type p2 on t.guid = p2.unit_guid

                                     and p2.type_code = '03'

 where (p1.type_code is not null or p2.type_code is not null)

 order by p1.type_code, p2.type_code, t.code;

 

 --第二:

 select * from (

select code, name, nvl((select '是' from base_unit_type a where a.unit_guid = t.guid

and a.type_code = '02'), '否') as 指标单位,

nvl((select '是' from base_unit_type a where a.unit_guid = t.guid

and a.type_code = '03'), '否') as 决算单位

  from base_unit t

 where exists (select 1s

          from base_unit_type p

         where p.unit_guid = t.guid

           and p.type_code in ('02', '03')) ) m

order by m.指标单位 desc , m.决算单位 desc, m.code ;

 

 

--第三:

select t.code, t.name, max(case when t.type_code='02' then '是' else '否' end) as aa,

max(case when t.type_code='03' then '是' else '否' end) as bb

from

(

select t1.code, t1.name, t2.type_code

  from base_unit t1, base_unit_type t2

 where t1.guid = t2.unit_guid

   and t2.type_code in ('02', '03')

) t

group by t.code,t.name 

order by aa desc ,bb desc

 

--第四:

select m.code,m.name, decode(aa,1,'index_unit','NO'),decode(bb,1,'unit','NO')  from (

select k.code,k.name, max(index_unit) as aa,max(unit) as bb from (

select code, name, 1 as index_unit, 0 as unit

  from base_unit t

 where exists (select 1

          from base_unit_type p

         where p.unit_guid = t.guid

           and p.type_code = '02')

union all

select code, name, 0 as index_unit, 1 as unit

  from base_unit t

 where exists (select 1

          from base_unit_type p

         where p.unit_guid = t.guid

           and p.type_code = '03') 

           ) k      

           group by k.code, k.name     

           ) m

order by m.aa+m.bb desc, m.aa, m.code           


 

分享到:
评论

相关推荐

    C常用查询手册.pdf

    C语言常用查询手册 C语言是一种通用的高级编程语言,广泛应用于操作系统、嵌入式系统、应用软件等领域。以下是C语言常用查询手册,涵盖头文件查询、关键字查询、ASCII码查询等多个方面。 头文件查询 C语言中...

    T100制造常用查询报表V3.0.xlsx

    T100制造常用查询报表V3.0.xlsx

    es常用查询语法.md

    es常用查询语法

    SQL常用查询语句大全

    本资料"SQL常用查询语句大全"是一份非常适合初学者的教程,它涵盖了SQL语言的基本概念和常用操作。 首先,我们要理解SQL的四大基本操作:SELECT(选择)、INSERT(插入)、UPDATE(更新)和DELETE(删除)。这些...

    PLSQL常用查询语句

    ### PL/SQL 常用查询语句详解 在数据库管理与开发中,查询语句是必不可少的一部分。本文档将围绕“PL/SQL常用查询语句”这一主题展开,详细介绍数据库查询的基础概念以及一系列实用的SQL查询技巧。通过本文的学习,...

    一个简单的常用查询

    标题 "一个简单的常用查询" 暗示了我们即将探讨的是在PowerBuilder(PB)环境中进行数据查询的方法,特别是关于DataWindow(DW)对象的SQL查询。PowerBuilder是一款流行的、基于事件驱动的可视化编程工具,主要用于...

    C++程序员常用查询手册

    ### C++常用查询手册知识点详解 #### 一、头文件查询 **1. `<algorithm>`** - **功能**: 提供了一系列通用算法,用于处理容器和其他序列类型。 - **非修改性序列操作**(12个): - `for_each()`: 对序列中的每...

    oracle常用查询语句示例

    本篇文章将基于"oracle常用查询语句示例"这一主题,深入探讨在Oracle中执行多表查询和单表中复杂查询的方法。 首先,我们来看单表查询。在Oracle中,基础的SELECT语句用于从单个表中检索数据。例如: ```sql ...

    oracle10g常用查询语句

    ### Oracle 10g常用查询语句 #### 1. 查询当前用户 `select user from dual;` 此查询语句用于获取当前连接数据库的用户名。`dual`表是一个特殊表,每个Oracle数据库都包含它,主要用于执行简单的计算或返回单行...

    常用查询表脚本<改下可方便查询SP、函数>

    根据提供的文件信息,本文将详细解析“常用查询表脚本&lt;改下可方便查询SP、函数&gt;”这一知识点,包括其适用场景、实现原理及如何根据实际需求进行修改等内容。 ### 一、背景介绍 在数据库管理与维护过程中,经常需要...

    压力容器常用查询大全.exe

    压力容器常用查询大全

    oracle常用查询

    在日常运维和开发过程中,掌握Oracle的常用查询技巧至关重要。以下是一些关于"Oracle常用查询"的知识点详解: 1. **SQL语言基础**:Oracle查询主要依赖SQL(结构化查询语言),包括SELECT、FROM、WHERE、GROUP BY、...

    Django的ORM常用查询操作总结.rar

    这个总结主要涵盖了Django ORM的常用查询操作,旨在帮助开发者更高效地进行数据操作。 1. **模型查询基础** - `objects` manager:每个Django模型都有一个默认的查询集管理器`objects`,用于执行查询。 - `get()`...

    Hibernate常用查询语句

    Hibernate常用查询语句.doc

    23个Mysql常用语句查询 最新 最全

    ### MySQL 常用查询语句详解 #### 一、查询数值型数据 - **基本语法**:`SELECT * FROM 表名 WHERE 条件;` - **示例**:`SELECT * FROM tb_name WHERE sum &gt; 100;` - 这里使用了比较运算符 `&gt;` 来筛选 `sum` 字段...

    mysql常用查询语句

    mysql常用查询语句

    oracle常用查询 问题+答案

    oracle常用查询 问题+答案 觉得是初学 比较好的东西。

    SQL重要的常用查询语句.doc

    SQL重要的常用查询语句汇总,通过该文档能够熟练掌握各种查询语句,熟练应对各个情况下数据联查。

    oracle数据库表空间常用查询以及相关操作命令

    oracle数据库表空间常用查询以及相关操作命令,实际开发中遇到的点滴备忘录

    3GPP和3GPP2协议分类清单--常用查询表

    3GPP和3GPP2协议分类清单--常用查询表

Global site tag (gtag.js) - Google Analytics