SQL Full Join 的 Where条件
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条件的更多相关文章
- SQL中JOIN 的用法
关于sql语句中的连接(join)关键字,是较为常用而又不太容易理解的关键字,下面这个例子给出了一个简单的解释 --建表table1,table2:create table table1(id int ...
- SQL中join的用法
关于sql语句中的连接(join)关键字,是较为常用而又不太容易理解的关键字,下面这个例子给出了一个简单的解释 --建表table1,table2:create table table1(id int ...
- SQL 连接 JOIN 例解。(左连接,右连接,全连接,内连接,交叉连接,自连接)
SQL 连接 JOIN 例解.(左连接,右连接,全连接,内连接,交叉连接,自连接) 最近公司在招人,同事问了几个自认为数据库可以的应聘者关于库连接的问题,回答不尽理想-现在在这写写关于它们的作用假设有 ...
- SQL Server Join方式
原文:SQL Server Join方式 0.参考文献 Microsoft SQL Server企业级平台管理实践 看懂SqlServer查询计划 1.测试数据准备 参考:Sql Server中的表访 ...
- Spark SQL 之 Join 实现
原文地址:Spark SQL 之 Join 实现 Spark SQL 之 Join 实现 涂小刚 2017-07-19 217标签: spark , 数据库 Join作为SQL中一个重要语法特性,几乎 ...
- SQL之Join的使用
一.基本概念 关于sql语句中的连接(join)关键字,是较为常用而又不太容易理解的关键字,下面这个例子给出了一个简单的解释 –建表user1,user2: table1 : create table ...
- 022:SQL优化--JOIN算法
目录 一. SQL优化--JOIN算法 1.1. JOIN 写法对比 2. JOIN的成本 3. JOIN算法 3.1. simple nested loop join 3.2. index nest ...
- SQL 连接(JOIN)
SQL 连接(JOIN) SQL join 用于把来自两个或多个表的行结合起来. SQL JOIN SQL JOIN 子句用于把来自两个或多个表的行结合起来,基于这些表之间的共同字段. 最常见的 JO ...
- SQL中join和cross join的区别
SQL中的连接可以分为内连接,外连接,以及交叉连接 . 1. 交叉连接CROSS JOIN 如果不带WHERE条件子句,它将会返回被连接的两个表的笛卡尔积,返回结果的行数等于两个表行数的乘积: 举例, ...
随机推荐
- Laravel 文件上传失败的问题 error 7
一个站点上传文件失败 error为7 UPLOAD_ERR_CANT_WRITE 临时文件上传不上 $_FILE打出来 Array( [file] => Array ( ...
- Laravel trait 使用心得
trait 是在PHP5.4中为了方便代码复用的一种实现方式,但目前我在看的的PHP项目中较少看的有程序员去主动使用这个实现方式,在laravel中有很多 trait 的使用,关于trait 在 la ...
- Ubuntu的常识使用了解
1 在分区的时候也是有一定的机巧的,根据磁盘的特点,我们知道越是靠磁盘外部的柱面,旋转越快,而且每次旋转时,磁盘读写头可以覆盖较多的区域,也就意味着靠外部的柱面可以得到较好的性能.所以在分区时,我们应 ...
- vs的 Avalon 自动补全
以VS2013为例: 1.关闭 Visual Studio 2.打开 C:/Program Files (x86)/Microsoft Visual Studio 12.0/Common7/Packa ...
- Cockroachdb 三、副本设置
三 副本配置 CockroachDB 副本配置可分为三个等级,集群级别>数据库级别>表级别 格式 YAML range_min_bytes: <size-in-bytes> / ...
- C# 图书整理
C#测试驱动开发C#设计模式C#高级编程单元测试之道C#版:使用Nunit 继续添加......
- [Elixir003] Mix Archives
在[Elixir001]中使用 mix escript.build 生成一个lifelog 的escript启动脚本. 今天我们尝试一下另一种方式:生成Archives. 我们先添加一个Task 1. ...
- PostSharp 结合 log4net 自动记录日志
环境: VS 2012 PostSharp-4.1.28 (下载地址)https://visualstudiogallery.msdn.microsoft.com/a058d5d3-e654-43f ...
- C#递归例程
using System; using System.Collections.Generic; using System.Linq; using System.Text; namespace Cons ...
- MaxScript镜像函数
看到有网友需要写的,其实镜像就是缩放改为负数 Fn MirrorObject argObjects argAxisName = ( local axisNames = #(#x,#y,#z) do ( ...