在项目中遇到了一个比较复杂关系的sql,关联关系有些模糊,现在梳理一下

sql如下:

SELECT TRAN.TRANS_DATE,
TRAN.TRANS_TIME,
TRAN.BUSI_TRAC_CODE YW,
PZK.JSPZK_PZBH PZBH,
DECODE(PZK.JSPZK_PZRQ,
'',
DECODE(KMZD.F_YEFX,
1,
RYE.JSZHRYEB_QCYE,
2,
RYE.JSZHRYEB_QCYE * (-1),
0),
DECODE(KMZD.F_YEFX,
1,
YE.JSZHYEB_QCYE,
2,
YE.JSZHYEB_QCYE * (-1),
0)) QCYE,
DECODE(PZFL.JSPZFL_JZFX, '', PZFL.JSPZFL_JE, null) JFFS,
DECODE(PZFL.JSPZFL_JZFX, '', PZFL.JSPZFL_JE, null) DFFS,
TRAN.AMOUNT,
DECODE(KMZD.F_YEFX,
2,
PZFL.JSPZFL_BAL * (-1) +
NVL(PZFL.JSPZFL_FUNDSPOOL_BAL, 0) * (-1),
PZFL.JSPZFL_BAL + NVL(PZFL.JSPZFL_FUNDSPOOL_BAL, 0)) ZHDQYE ,
DECODE(PZFL.JSPZFL_OPP_NAME,
NULL,
TRAN.OPP_CUST_ACC_NAME,
PZFL.JSPZFL_OPP_NAME) OPPNAME ,
DECODE(PZFL.JSPZFL_OPP_ACTNO,
NULL,
TRAN.OPP_CUST_ACC_CODE,
PZFL.JSPZFL_OPP_ACTNO) OPPACTNO,
PZK.JSPZK_BZ ZY
FROM JSPZFL PZFL, TRAN_FLOW TRAN, LSKMZD KMZD, JSPZK PZK
left join JSZHYEB YE
on YE.JSZHYEB_BH = ''
AND YE.JSZHYEB_RQ = PZK.JSPZK_PZRQ
left join JSZHRYEB RYE
on RYE.JSZHRYEB_BH = ''
WHERE PZK.JSPZK_PZNM = PZFL.JSPZFL_PZNM
AND TRAN.VOUCHER_ID = PZK.JSPZK_PZNM
AND TRAN.BUSI_TRAC_CODE NOT IN ('IFP_ZJXB', 'IFP_ZJSH')
AND PZFL.JSPZFL_KMBH = KMZD.F_KMBH
AND PZK.JSPZK_JZBZ <> ''
AND NVL(PZFL.JSPZFL_BY7, '') != ''
AND TRAN.CUST_CODE IN (select cust_code
from CUST_CORP_INFO
start with cust_code = ''
connect by prior organ_id = parent_code
AND CUST_TYPE = '') AND EXISTS (SELECT 1
FROM V_DIC_ACC ACC
WHERE ACC.BH = PZFL.JSPZFL_ZHBH
AND ACC.BH = '') AND PZK.JSPZK_PZRQ >= ''
AND PZK.JSPZK_PZRQ <= ''
ORDER BY PZK.JSPZK_PZNM, PZFL.JSPZFL_FLNM, TRAN.TRAC_ID

一个复杂关联的sql的更多相关文章

  1. Hibernate原生SQL查询多表关联,SQL语句要注意的问题

    Hibernate原生SQL查询多表关联,SQL语句要注意的问题 @for&ever 2009-9-4 系统环境: MySQL5.1 Hibernate3.3 有如下的假定: 实体类 Ques ...

  2. 【应用】_有道词典客户端一个后缀名为sql的数据库。

    [缘起] 在清理电脑磁盘的时候,看一看各安装文件夹有占用了多大容量,发现有道词典居然达140MB了,于是进去看看. 发现个有趣的文件:XXX.sql. 首先我们看一看它的安装文件夹的结构: Dict ...

  3. 一个小面试题sql

    一.            问答题 1简要说明分页是如何实现的. A:sqlserver: Select top(pagesize)  * from  student where id not in( ...

  4. mysql一个非常实用解决sql查询优化的函数explain

    前言: 项目中有个表有几万条数据,然后还要关联其他表,查询条件也有点多,再没有其他查询条件下,默认时间查询条件如果是查一年的数据的话,查询时间那是慢得可怕. 找总监去优化sql,看他用了一个sql函数 ...

  5. [mysql] 关联查询sql记录

    //查询账单关联订单 select o.id as id, o.order_no as orderNo, o.case_no as caseNo, o.send_time as sendTime, o ...

  6. 在有道词典程序文件夹发现一个后缀名为sql的数据库(SQLite)

    缘起 在清理电脑磁盘的时候,看一看各安装文件夹有占用了多大容量,发现有道词典居然达140MB了,于是进去看看. 发现个有趣的文件:XXX.sql. 首先我们看一看它的安装文件夹的结构: Dict └─ ...

  7. 一个小时成功安装SQL Server 2012图解教程

    在安装微软最新数据库SQL Server 2012之前,编者先确定一下安装环境:Windonws 7 SP1,32位操作系统.CPU是2.1GHz赛扬双核T3500,内存2.93GB. 安装SQL S ...

  8. 从一个小例子认识SQL游标

    1    什么是游标: 关系数据库中的操作会对整个行集起作用. 例如,由 SELECT 语句返回的行集包括满足该语句的 WHERE 子句中条件的所有行. 这种由语句返回的完整行集称为结果集. 应用程序 ...

  9. 通过一个正则表达式,让SQL Server数据库的带参sql也支持位置参数语法!

    .NET Framework 2.0 中,Microsoft 在 System.Data.Common 名称空间下定义了一组类用来让程序员编写适用于不同数据库的数据访问代码,而且还在 Enterpri ...

随机推荐

  1. 异步机制 - APC

    APC : An asynchronous procedure call,异步过程调用,是微软提供的一种在线程上下文中执行代码的机制.当向一个线程插入一个USER APC时,如果线程进入alertab ...

  2. 了解Spring Boot的自动配置

    摘自:https://www.jianshu.com/p/ddb6e32e3faf Spring Boot的自动配置给开发者带来了很大的便利,当开发人员在pom文件中添加starter依赖后,mave ...

  3. 一个 TCP 连接可以发多少个 HTTP 请求

    第一个问题 第二个问题 第三个问题 第四个问题 第五个问题 曾经有这么一道面试题:从 URL 在浏览器被被输入到页面展现的过程中发生了什么? 相信大多数准备过的同学都能回答出来,但是如果继续问:收到的 ...

  4. 消息中间件MQ

    消息中间件MQ:为方便预览,将思维导图上传至印象笔记,博客园直接上传图片受限于图片大小 https://app.yinxiang.com/shard/s24/nl/27262531/c3e137a5- ...

  5. JAVA基于File的基本的增删改查

    直接上代码 public class TestFile { /** * 创建目录 * @param filename 路径 */ public static void createFile(Strin ...

  6. LINUX 上 实现SNTP (时间同步)

    Network Time Protocol (NTP) 也是RHCE新增的考试要求. 学习的时候也顺便复习了一下如何设置Linux的时间,现在拿出来和大家分享 设置NTP服务器不难但是NTP本身是一个 ...

  7. Antecedent Membership Functions相关资料

    属于模糊控制领域 前件隶属函数(Antecedent Membership Functions) 基于模糊近似的强化学习方法研究 - 豆丁网 https://www.docin.com/p-13022 ...

  8. 16Flutter中的路由 基本路由 基本路由跳转传值(上)

    /* Flutter中的普通路由.普通路由传值.命名路由.命名路由传值 Flutter中的路由通俗的讲就是页面跳转.在Flutter中通过Navigator组件管理路由导航. 并提供了管理堆栈的方法. ...

  9. 阶段5 3.微服务项目【学成在线】_day02 CMS前端开发_15-webpack研究-webpack-dev-server-程序调试

    webpack把我们的js文件都打包了.所以不能用chrome的调试工具. 打包生成的js文件比较乱无法跟踪. 配置好了以后就可以让浏览器查看到打包后的源代码 在源代码这里加一个debuuger 这里 ...

  10. 使用super函数----增量重写普通方法和构造方法

    使用super函数----增量重写普通方法和构造方法 在子类中如果重写了超类的方法,通常需要在子类方法中调用超类的同名方法,也就是说,重写超类的方法,实际上应该是一种增量的重写方式,子类方法会在超类的 ...