一种将主题编码不一致的多年平衡表与全连接全连接语句相结合的方法_驾照考试论文

一种将主题编码不一致的多年平衡表与全连接全连接语句相结合的方法_驾照考试论文

用FULL JOIN全连接语句合并科目编码不一致的多年余额表的方法,本文主要内容关键词为:余额论文,科目论文,语句论文,多年论文,方法论文,此文献不代表本站观点,内容供学术参考,文章仅供参考阅读下载。

      全连接的含义是不管表1和表2的元组是否满足连接条件,均输出表1和表2的内容;如果是在连接条件上匹配的元组,则另一个表返回相应值,否则另一个表返回值。

      在被审计单位不同年度余额表的科目编码发生变化时,为了在总体上把握多个年度的总账余额变化情况,在SQL中可以使用FULL JOIN全连接语句,将科目编码不一致的余额表,合并在同一张表上。具体做法:

      1.首先将2012-2015年的EXCEL余额表导入SQL,在导入前注意将字段名称标注年度,以便在合并后的总表上加以区别。

      2.先用full join将2012、2013两个年度的余额表全连接:select a2.*,a3.* from a2 full join a3 on a2.科目编码2012=a3.科目编码2013,浏览查询结果后发现,既有2012年有2013年无的科目编码,又有2013年有2012年无的科目编码。

      3.在全连接后生成的表中建立新列,取这两个年度科目编码不为空的值为新列的值。同样的方法建立科目名称新列,用CASE语句来完成。

      select(case when a2.科目编码2012IS NULL then a3.科目编码2013

      else a2.科目编码2012 end)as fullbianma,(case when a2.科目名称2012 IS NULL then a3.科目名称2013else a2.科目名称2012 end)as fullmc,a2.*,a3.* into a23 from a2 full join a3 on a2.科目编码2012=a3.科目编码2013

      4.由于全连接一般只能在两张表上进行,用同样的方法分别再与2014、2015年度的余额表合并。

      select(case when fullbianma IS NU LL then a4.科目编码2014

      else fullbianma end)as fullbianma1,

      (case when fullmc IS NULL then a4.科目名称2014

      else fullmc end)as fullmc1,aa23.*,a4.* into aa234

      from aa23 full join a4 on aa23 fullbianma=a4.科目编码2014

      select(case when fullbianma1 IS NULL then a5.科目编码2015

      else fullbianma1 end)as fullbianma2,

      (case when fullmc1 IS NULL then a5.科目名称2015

      else fullmc1 end)as fullmc2,aa234.*,a5.* into aa2345

      from aa234 full join a5 on aa234.fullbianma=a5.科目编码2015

      5.去除总表aa234的冗余字段fullbianma、fullbianma1、fullmc、fullmc1。

标签:;  

一种将主题编码不一致的多年平衡表与全连接全连接语句相结合的方法_驾照考试论文
下载Doc文档

猜你喜欢