zoukankan      html  css  js  c++  java
  • 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 账簿名称 ='蓝海电子公司主账簿'
  • 相关阅读:
    @终极解密输入网址按回车到底发生了什么
    jgitflow-maven-plugin报错:The authenticity of host can't be established.
    java log4j2日志行号不显示问题
    Prometheus监控之grafana常用模板编号记录
    DM数据守护
    使用IntelliJ IDEA 配置Maven(入门)
    IntelliJ IDEA lombok插件的安装和使用
    idea svn连接https报错问题: E230001: Server SSL certificate verification failed: certificate issued
    SVN安装后,右键不显示SVN菜单项
    IntelliJ IDEA怎么配置svn,集成svn方法
  • 原文地址:https://www.cnblogs.com/Bruce_H21/p/10577478.html
Copyright © 2011-2022 走看看