注册 登录
编程论坛 VFP论坛

三表合并单位不全求助!要求将所有单位都统计出来!谢谢大师!

wangguowu 发布于 2023-02-18 10:38, 1185 次点击
只有本站会员才能查看附件,请 登录

Select Recn() As 序号,tt1.权利人;
    ,""+Transform(tt1.一月)+"/"+Transform(tt2.一月)+"/"+Transform(tt3.一月)-Space(10)-"" 一月;
    ,""+IIF(tt1.二月=0,'',Transform(tt1.二月))+"/"+IIF(tt2.二月=0,'',Transform(tt2.二月))+"/"+IIF(tt3.二月=0,'',Transform(tt3.二月))-Space(10)-"" 二月;
    ,""+IIF(tt1.三月=0,'',Transform(tt1.三月))+"/"+IIF(tt2.三月=0,'',Transform(tt2.三月))+"/"+IIF(tt3.三月=0,'',Transform(tt3.三月))-Space(10)-"" 三月;   
    ,""+IIF(tt1.四月=0,'',Transform(tt1.四月))+"/"+IIF(tt2.四月=0,'',Transform(tt2.四月))+"/"+IIF(tt3.四月=0,'',Transform(tt3.四月))-Space(10)-"" 四月;
    ,""+IIF(tt1.五月=0,'',Transform(tt1.五月))+"/"+IIF(tt2.五月=0,'',Transform(tt2.五月))+"/"+IIF(tt3.五月=0,'',Transform(tt3.五月))-Space(10)-"" 五月;   
    ,""+IIF(tt1.六月=0,'',Transform(tt1.六月))+"/"+IIF(tt2.六月=0,'',Transform(tt2.六月))+"/"+IIF(tt3.六月=0,'',Transform(tt3.六月))-Space(10)-"" 六月;
    ,""+IIF(tt1.七月=0,'',Transform(tt1.七月))+"/"+IIF(tt2.七月=0,'',Transform(tt2.七月))+"/"+IIF(tt3.七月=0,'',Transform(tt3.七月))-Space(10)-"" 七月;   
    ,""+IIF(tt1.八月=0,'',Transform(tt1.八月))+"/"+IIF(tt2.八月=0,'',Transform(tt2.八月))+"/"+IIF(tt3.八月=0,'',Transform(tt3.八月))-Space(10)-"" 八月;
    ,""+IIF(tt1.九月=0,'',Transform(tt1.九月))+"/"+IIF(tt2.九月=0,'',Transform(tt2.九月))+"/"+IIF(tt3.九月=0,'',Transform(tt3.九月))-Space(10)-"" 九月;   
    ,""+IIF(tt1.十月=0,'',Transform(tt1.十月))+"/"+IIF(tt2.十月=0,'',Transform(tt2.十月))+"/"+IIF(tt3.十月=0,'',Transform(tt3.十月))-Space(10)-"" 十月;
    ,""+IIF(tt1.十一月=0,'',Transform(tt1.十一月))+"/"+IIF(tt2.十一月=0,'',Transform(tt2.十一月))+"/"+IIF(tt3.十一月=0,'',Transform(tt3.十一月))-Space(10)-"" 十一月;   
    ,""+IIF(tt1.十二月=0,'',Transform(tt1.十二月))+"/"+IIF(tt2.十二月=0,'',Transform(tt2.十二月))+"/"+IIF(tt3.十二月=0,'',Transform(tt3.十二月))-Space(10)-"" 十二月;
    ,""+Transform(tt1.合计)+"/"+Transform(tt2.合计) +"/"+Transform(tt3.合计)-Space(10)-"" 抵清销合计;
    From tt1,tt2,tt3  Where  tt2.权利人==tt1.权利人 and  tt2.权利人==tt3.权利人 Into Cursor Tt4 Readwrite

[此贴子已经被作者于2023-2-18 10:41编辑过]

8 回复
#2
laowan0012023-02-18 10:58
From tt1,tt2,tt3  Where  tt2.权利人==tt1.权利人 and  tt2.权利人==tt3.权利人


这种where条件只能取出最小集合(8条)
#3
sdta2023-02-18 11:00
按下面的代码改下

Select 00 序号,NVL(tt1.权利人, tt2.权利人) 权利人;
    ,""+Transform(NVL(tt1.一月, "0"))+"/"+Transform(NVL(tt2.一月, "0"))+"/"+Transform(NVL(tt3.一月, "0"))-Space(10)-"" 一月;
    From tt1 FULL JOIN tt2 ON tt2.权利人==tt1.权利人 FULL JOIN tt3 ON tt2.权利人==tt3.权利人 Into Cursor Tt4 Readwrite
  REPLACE ALL 序号 WITH RECNO()  
BROWSE


[此贴子已经被作者于2023-2-18 11:56编辑过]

#4
wangguowu2023-02-18 11:57
回复 3楼 sdta
[附件]107793[/附件]成这样的

Select Recn() As 序号,tt1.权利人;
    ,""+Transform(tt1.一月)+"/"+Transform(tt2.一月)+"/"+Transform(tt3.一月)-Space(10)-"" 一月;
    ,""+IIF(tt1.二月=0,'',Transform(tt1.二月))+"/"+IIF(tt2.二月=0,'',Transform(tt2.二月))+"/"+IIF(tt3.二月=0,'',Transform(tt3.二月))-Space(10)-"" 二月;
    ,""+IIF(tt1.三月=0,'',Transform(tt1.三月))+"/"+IIF(tt2.三月=0,'',Transform(tt2.三月))+"/"+IIF(tt3.三月=0,'',Transform(tt3.三月))-Space(10)-"" 三月;   
    ,""+IIF(tt1.四月=0,'',Transform(tt1.四月))+"/"+IIF(tt2.四月=0,'',Transform(tt2.四月))+"/"+IIF(tt3.四月=0,'',Transform(tt3.四月))-Space(10)-"" 四月;
    ,""+IIF(tt1.五月=0,'',Transform(tt1.五月))+"/"+IIF(tt2.五月=0,'',Transform(tt2.五月))+"/"+IIF(tt3.五月=0,'',Transform(tt3.五月))-Space(10)-"" 五月;   
    ,""+IIF(tt1.六月=0,'',Transform(tt1.六月))+"/"+IIF(tt2.六月=0,'',Transform(tt2.六月))+"/"+IIF(tt3.六月=0,'',Transform(tt3.六月))-Space(10)-"" 六月;
    ,""+IIF(tt1.七月=0,'',Transform(tt1.七月))+"/"+IIF(tt2.七月=0,'',Transform(tt2.七月))+"/"+IIF(tt3.七月=0,'',Transform(tt3.七月))-Space(10)-"" 七月;   
    ,""+IIF(tt1.八月=0,'',Transform(tt1.八月))+"/"+IIF(tt2.八月=0,'',Transform(tt2.八月))+"/"+IIF(tt3.八月=0,'',Transform(tt3.八月))-Space(10)-"" 八月;
    ,""+IIF(tt1.九月=0,'',Transform(tt1.九月))+"/"+IIF(tt2.九月=0,'',Transform(tt2.九月))+"/"+IIF(tt3.九月=0,'',Transform(tt3.九月))-Space(10)-"" 九月;   
    ,""+IIF(tt1.十月=0,'',Transform(tt1.十月))+"/"+IIF(tt2.十月=0,'',Transform(tt2.十月))+"/"+IIF(tt3.十月=0,'',Transform(tt3.十月))-Space(10)-"" 十月;
    ,""+IIF(tt1.十一月=0,'',Transform(tt1.十一月))+"/"+IIF(tt2.十一月=0,'',Transform(tt2.十一月))+"/"+IIF(tt3.十一月=0,'',Transform(tt3.十一月))-Space(10)-"" 十一月;   
    ,""+IIF(tt1.十二月=0,'',Transform(tt1.十二月))+"/"+IIF(tt2.十二月=0,'',Transform(tt2.十二月))+"/"+IIF(tt3.十二月=0,'',Transform(tt3.十二月))-Space(10)-"" 十二月;
    ,""+Transform(tt1.合计)+"/"+Transform(tt2.合计) +"/"+Transform(tt3.合计)-Space(10)-"" 抵清销合计;
 From (tt2 Left Join tt3 On tt2.权利人=tt3.权利人) Left Join tt1 On tt2.权利人=tt1.权利人 Order By tt2.权利人


加上这句权利人成空的了
只有本站会员才能查看附件,请 登录
只有本站会员才能查看附件,请 登录


[此贴子已经被作者于2023-2-18 12:15编辑过]

#5
schtg2023-02-18 13:02
三楼正解,不是你需要的结果吗?
只有本站会员才能查看附件,请 登录
#6
wangguowu2023-02-18 18:30
回复 3楼 sdta
谢谢
#7
wangguowu2023-02-18 18:32
回复 5楼 schtg
#8
sam_jiang2023-02-18 18:51
你这是给单位写软件吗?
#9
wangguowu2023-02-19 10:40
回复 8楼 sam_jiang
工作之需要!嗯😊
1