在一个查询中从2个表中选择Parent..Child记录

时间:2015-06-01 09:38:16

标签: tsql sql-server-2008-r2

我有两个名为YL0PF的表(主记录或父记录)和YL1PF(详细信息或子记录)。

他们像这样加入

YL0AB=YL1AB, YL0AN=YL1AN, YL0AS=YL1AS

我们通过DTEINP列限制记录。

1条主记录可以有0到多条详细记录。儿童记录基本上是欠款记录,显示截止到期月份的支付金额

所以我当然可以这样做:

SELECT  Y0.* ,
        Y1.*
FROM    alpsProduction..YL0PF Y0
        LEFT OUTER JOIN alpsProduction..YL1PF Y1 ON Y0.L0AB = y1.L1AB
                                                    AND Y0.L0AN = Y1.L1AN
                                                    AND Y0.L0AS = Y1.L1AS
WHERE   Y0.DTEINP = '01 Jun 2015'
ORDER BY Y0.L0AB + Y0.L0AN + Y0.L0AS ,
        Y1.L1AB + Y1.L1AN + Y1.L1AS ,
        CAST(Y1.DTEINP AS DATE) DESC

这会将子记录放在重复的父记录旁边。

但如果可能,我想提取如下数据:

  

L0AS1,L0AN1,L0AS1,*

     
    

L1AS1,L1AN1,L1AS1,*

         

L1AS1,L1AN1,L1AS1,*

  
     

L0AS2,L0AN2,L0AS2,*

     
    

L1AS2,L1AN2,L1AS2,*

         

L1AS2,L1AN2,L1AS2,*

         

L1AS2,L1AN2,L1AS2,*

  

那我怎么能这样做?

0 个答案:

没有答案
相关问题