SQL需求是损益视图串资产负债视图

用Excel透视表模拟出来的结果就是

用SQL查询如下:

当Where条件是左边的视图的时候

select
损益视图.年
,损益视图.年月
,损益视图.期间
,损益视图.账簿名称
,损益视图.组织编码
,损益视图.组织名称
,损益视图.项目名称 损益项目
,损益视图.本期发生数 损益本期
,资产负债视图.项目名称 资产项目
,资产负债视图.年初数 资产年初
,资产负债视图.期末数 资产期末 from 损益视图
full join 资产负债视图
on 损益视图.年月 = 资产负债视图.年月
and 损益视图.年 =资产负债视图.年
and 损益视图.期间 = 资产负债视图.期间
and 损益视图.账簿名称 = 资产负债视图.账簿名称
and 损益视图.组织编码 = 资产负债视图.组织编码
where 损益视图.账簿名称 ='蓝海电子公司主账簿'

当Where条件是右边视图的时候

    select
损益视图.年
,损益视图.年月
,损益视图.期间
,损益视图.账簿名称
,损益视图.组织编码
,损益视图.组织名称
,损益视图.项目名称 损益项目
,损益视图.本期发生数 损益本期
,资产负债视图.项目名称 资产项目
,资产负债视图.年初数 资产年初
,资产负债视图.期末数 资产期末 from 损益视图
full join 资产负债视图
on 损益视图.年月 = 资产负债视图.年月
and 损益视图.年 =资产负债视图.年
and 损益视图.期间 = 资产负债视图.期间
and 损益视图.账簿名称 = 资产负债视图.账簿名称
and 损益视图.组织编码 = 资产负债视图.组织编码
--where 损益视图.账簿名称 ='蓝海电子公司主账簿'
where 资产负债视图.账簿名称 ='蓝海电子公司主账簿'

所以要慎重选择Where条件,同时如果这个数据集被CBoard调用的时候,那还要注意这些

项目了,因为Cboard会包一层视图,这时候项目就可以变成条件了,条件就决定了重复方向。

select *
from ( select
损益视图.年
,损益视图.年月
,损益视图.期间
,损益视图.账簿名称
,损益视图.组织编码
,损益视图.组织名称
,损益视图.项目名称 损益项目
,损益视图.本期发生数 损益本期
,资产负债视图.项目名称 资产项目
,资产负债视图.年初数 资产年初
,资产负债视图.期末数 资产期末 from 损益视图
full join 资产负债视图
on 损益视图.年月 = 资产负债视图.年月
and 损益视图.年 =资产负债视图.年
and 损益视图.期间 = 资产负债视图.期间
and 损益视图.账簿名称 = 资产负债视图.账簿名称
and 损益视图.组织编码 = 资产负债视图.组织编码
) v_cview --where 损益视图.账簿名称 ='蓝海电子公司主账簿'
where 账簿名称 ='蓝海电子公司主账簿'

SQL Full Join 的 Where条件的更多相关文章

  1. SQL中JOIN 的用法

    关于sql语句中的连接(join)关键字,是较为常用而又不太容易理解的关键字,下面这个例子给出了一个简单的解释 --建表table1,table2:create table table1(id int ...

  2. SQL中join的用法

    关于sql语句中的连接(join)关键字,是较为常用而又不太容易理解的关键字,下面这个例子给出了一个简单的解释 --建表table1,table2:create table table1(id int ...

  3. SQL 连接 JOIN 例解。(左连接,右连接,全连接,内连接,交叉连接,自连接)

    SQL 连接 JOIN 例解.(左连接,右连接,全连接,内连接,交叉连接,自连接) 最近公司在招人,同事问了几个自认为数据库可以的应聘者关于库连接的问题,回答不尽理想-现在在这写写关于它们的作用假设有 ...

  4. SQL Server Join方式

    原文:SQL Server Join方式 0.参考文献 Microsoft SQL Server企业级平台管理实践 看懂SqlServer查询计划 1.测试数据准备 参考:Sql Server中的表访 ...

  5. Spark SQL 之 Join 实现

    原文地址:Spark SQL 之 Join 实现 Spark SQL 之 Join 实现 涂小刚 2017-07-19 217标签: spark , 数据库 Join作为SQL中一个重要语法特性,几乎 ...

  6. SQL之Join的使用

    一.基本概念 关于sql语句中的连接(join)关键字,是较为常用而又不太容易理解的关键字,下面这个例子给出了一个简单的解释 –建表user1,user2: table1 : create table ...

  7. 022:SQL优化--JOIN算法

    目录 一. SQL优化--JOIN算法 1.1. JOIN 写法对比 2. JOIN的成本 3. JOIN算法 3.1. simple nested loop join 3.2. index nest ...

  8. SQL 连接(JOIN)

    SQL 连接(JOIN) SQL join 用于把来自两个或多个表的行结合起来. SQL JOIN SQL JOIN 子句用于把来自两个或多个表的行结合起来,基于这些表之间的共同字段. 最常见的 JO ...

  9. SQL中join和cross join的区别

    SQL中的连接可以分为内连接,外连接,以及交叉连接 . 1. 交叉连接CROSS JOIN 如果不带WHERE条件子句,它将会返回被连接的两个表的笛卡尔积,返回结果的行数等于两个表行数的乘积: 举例, ...

随机推荐

  1. MVC5数据库迁移命令!

    首先数据库迁移在上下文里设置要设置成为CreateDatabaseIfNotExists, 然后在Nuget控制平台输入命令 在“程序包管理器控制台”窗口中输入:Enable-Migrations   ...

  2. Python中解码decode()与编码encode()与错误处理UnicodeDecodeError: 'gbk' codec can't decode byte 0xab

    编码方法encoding() 描述 encode() 方法以指定的编码格式编码字符串,默认编码为 'utf-8'.将字符串由string类型变成bytes类型. 对应的解码方法:bytes decod ...

  3. idea中处理异常的快捷键

    alt+Enter

  4. mvc html.PartialView()传参

    方式一,viewDatapublic static MvcHtmlString Partial(this HtmlHelper htmlHelper, string partialViewName, ...

  5. Oracle物化视图的一般使用

    普通视图和物化视图根本就不是一个东西,说区别都是硬拼到一起的,首先明白基本概念,普通视图是不存储任何数据的,他只有定义,在查询中是转换为对应的定义SQL去查询,而物化视图是将数据转换为一个表,实际存储 ...

  6. 企业搜索引擎开发之连接器connector(二十三)

    我们在前面的文章已经看到,ConnectorCoordinatorImpl类也实现了ChangeHandler接口,本文接下来分析实现该接口的作用 class ConnectorCoordinator ...

  7. Asp.NetCore MVC Web 应用

    Asp.NetCore MVC 与 普通的MVC 基本一致, 只是代码结构稍有改动 一.创建项目 1. 2. 3. 项目结构 二. 构建数据模型 1. Startup类中配置EF Core MySql ...

  8. centos 虚拟机中修改屏幕分辨率

    1.$ vi /boot/grub/grub.conf(路径可能会不一样,也可以是 /etc/grub.conf),打开grub.conf文件 2.我们修改分辨率,需要在kernel那行加入 vga= ...

  9. [Erlang30]Erlang shell是如何工作的?

    一些关于Erlang启动进程的分析:希望你会喜欢. 原英文地址:http://ferd.ca/repl-a-bit-more-and-less-than-that.html 研究Erlang shel ...

  10. vscode怎样新建项目

    首先,vscode本身没有新建项目的选项,所以要先创建一个空的文件夹喔.   然后打开vscode,再在vscode里面打开文件夹,这样才可以创建项目.   选择之前创建的空文件将作为vscode的文 ...