以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.com/bbs/index.asp)
--  专家坐堂  (http://foxtable.com/bbs/list.asp?boardid=2)
----  [求助]合并多个查询结果  (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=143724)

--  作者:lgj716330
--  发布时间:2019/12/2 16:53:00
--  [求助]合并多个查询结果
Dim  jb4 As New SQLJoinTableBuilder("查询表1","总账")
 jb4.AddCols("年份","月份","编号","名称","部门")
jb4.AddExp("金额","借方金额")


Dim  jb5 As New SQLJoinTableBuilder("查询表1","汇总登记表")
 jb5.AddCols("年份","月份","编号","名称","部门")
If tj8.checked = True Then
jb5.AddExp("金额","标准")
elseIf tj9.checked = True Then
jb5.AddExp("金额","标准*0")
End If

详细错误信息:
使用 UNION、INTERSECT 或 EXCEPT 运算符合并的所有查询必须在其目标列表中有相同数目的表达式。

If tj8.checked = True Then
jb5.AddExp("金额","标准")
elseIf tj9.checked = True Then
jb5.AddExp("金额","标准*0")
End If
上面这里的条件不能这么用吗,如果把条件去掉直接jb5.AddExp("金额","标准")是没问题的
但如果把jb4也加上这样的条件,则后续统计引用的时候提示“金额”列不存在


[此贴子已经被作者于2019/12/2 17:05:06编辑过]

--  作者:有点蓝
--  发布时间:2019/12/2 17:05:00
--  
试试
If tj8.checked = True Then
jb5.AddExp("金额","标准")
else
jb5.AddExp("金额","0")
End If

--  作者:lgj716330
--  发布时间:2019/12/2 17:27:00
--  
这样错误提示到是没有,就是当选择If tj8.checked = True Then这个条件时,数据也是0
--  作者:有点蓝
--  发布时间:2019/12/2 20:12:00
--  
上传实例测试