以文本方式查看主题 - Foxtable(狐表) (http://foxtable.com/bbs/index.asp) -- 专家坐堂 (http://foxtable.com/bbs/list.asp?boardid=2) ---- 6.27更新中的多表连接问题(已解决,原来增加了一个连接类型参数) (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=10858) |
-- 作者:reachtone -- 发布时间:2011/6/27 18:16:00 -- 6.27更新中的多表连接问题(已解决,原来增加了一个连接类型参数) 用自带的“组合统计结果”为例,执行代码:
Dim b As New SQLGroupTableBuilder("统计表1","进货单")
之前反映的问题依旧: 1、以“进货单”为基表,添加“销售单”参与统计。既然是按“进货单”的“型号”列进行分组,那么“进货单”中的所有型号都应出现在统计结果中。事实是,在“销售单”中没有关联记录的“NB-XXX”仍然消失。这肯定是不对的。 同理,如果是按“销售单”中的型号分组,则销售单中的所有型号都应出现在统计结果中。这就类似于sql的左连接或右连接。 2、统计列有两个,一个是Exp,一个是Def,统计的结果中,按列名统计的结果仍然排在表达式列的前面。
以上问题在上次更新时就提出来了,莫非是忘记修改了? [此贴子已经被作者于2011-6-27 23:24:07编辑过]
|
-- 作者:reachtone -- 发布时间:2011/6/27 18:21:00 -- 一楼的测试代码暂不考虑一对多还是多对多的问题,因为它的统计结果是不正确的。 用这个主要是便于说明问题。 比如,NB-XXX这个型号尽管在销售单中没有对应的记录,但它也应该出现在统计结果中,金额为0 |
-- 作者:mr725 -- 发布时间:2011/6/27 19:42:00 -- 撤了··· 从帮助中的SQLGroupTableBuilder看,好像就是要这样的吧。即:除了用来关联的列,其他列名在各表之间是不能重名的。否则用GroupTableBuilder+Combine来处理。 [此贴子已经被作者于2011-6-27 21:05:05编辑过]
|
-- 作者:狐狸爸爸 -- 发布时间:2011/6/27 20:36:00 -- 1、参考: http://help.foxtable.com/topics/2330.htm
2、顺序问题没有办法,统计接触后,用move方法调整个别列的位置吧 |
-- 作者:reachtone -- 发布时间:2011/6/27 23:22:00 -- 这次增加的连接类型参数很好使,本以为只对sqljointablebuild有效呢。呵呵 ok,问题解决! |