Rss & SiteMap

Foxtable(狐表) http://www.foxtable.com

新一代数据库软件,完美融合Access、Foxpro、Excel、vb.net之优势,人人都能掌握的快速软件开发工具!
共18 条记录, 每页显示 10 条, 页签: [1] [2]
[浏览完整版]

标题:SQLJoinTableBuilder能否合并多个结构相同的查询表?

1楼
ybil 发表于:2011/6/13 14:28:00

看来还需提供象SQL的UNION 的功能!

很多时候,一次SQLJoinTableBuilder不是我们想要的,必需对一些特殊情况进行二次处理,然后把[普遍]与[特殊]合并在一起!如下,如何合并"查询表1"与"查询表2"?

Dim jb As new SQLJoinTableBuilder("查询表1","A")
jb.AddTable("A","deno","B","deno")
jb.AddCol("A","序號")
jb.AddCol("B","deno")
jb.Build()


Dim jb As new SQLJoinTableBuilder("查詢2","A")
jb.AddTable("A","deno","B","deno")
jb.AddTable("B","clno","C","dno")
jb.AddCol("A","序號")
jb.AddCol("C","dno" ,"deno")
jb.Filter = "[商品砼] =0"
jb.Build()

2楼
狐狸爸爸 发表于:2011/6/13 14:30:00

可以合并的,合并方法一样。

 

Dim dt1 As fxDataSource
Dim jb1 As new SQLJoinTableBuilder("查询表1","A")
jb1.AddTable("A","deno","B","deno")
jb1.AddCol("A","序號")
jb1.AddCol("B","deno")
dt1 = jb1.BuildDataSource

Dim dt2 As fxDataSource
Dim jb2 As new SQLJoinTableBuilder("查詢2","A")
jb2.AddTable("A","deno","B","deno")
jb2.AddTable("B","clno","C","dno")
jb2.AddCol("A","序號")
jb2.AddCol("C","dno" ,"deno")
jb2.Filter = "[商品砼] =0"
dt2 = jb2.BuildDataSource
 
余下步骤一样的....
 
 
3楼
ybil 发表于:2011/6/13 14:43:00
试了不行![查询表1]与[查询表2]是无关联的,dt1.Combine("",dt2,"") 不行

我的意思是:把[查询表2]的结果接在[查询表1]的后面


4楼
ybil 发表于:2011/6/13 14:49:00
另SQLJoinTableBuilder好似不支持查询表
5楼
狐狸爸爸 发表于:2011/6/13 14:51:00

呵呵,合并的问题我看看

查询肯定不支持的,SQLJoinTableBuilder是从后台提取数据的

6楼
ybil 发表于:2011/6/13 15:04:00
以下是引用狐狸爸爸在2011-6-13 14:51:00的发言:

呵呵,合并的问题我看看

查询肯定不支持的,SQLJoinTableBuilder是从后台提取数据的



如fxDataSource能够:dt1 UNION dt2 表示无关联合并就行了(当然得有个Filter)


另jb.AddExp("A","[數量]=null","C")设置的列总是跑到表后?

7楼
狐狸爸爸 发表于:2011/6/13 15:26:00

呵呵,合并我会搞定的。

后添加的列,肯定在最后啊?

8楼
ybil 发表于:2011/6/13 15:30:00
以下是引用狐狸爸爸在2011-6-13 15:26:00的发言:

呵呵,合并我会搞定的。

后添加的列,肯定在最后啊?



jb.AddExp("A","[數量]=null","C")在前面也一样跑在后面!

9楼
狐狸爸爸 发表于:2011/6/13 15:37:00

我明白了,你只能move了:

http://help.foxtable.com/topics/0587.htm

 

我看看能否改进。

10楼
ybil 发表于:2011/6/13 16:10:00

还有,表达式增加的列,其表达式只能是指定表的列,不能象

SQLJoin那样:A.clsl*B.數量 



共18 条记录, 每页显示 10 条, 页签: [1] [2]

Copyright © 2000 - 2018 foxtable.com Tel: 4000-810-820 粤ICP备11091905号

Powered By Dvbbs Version 8.3.0
Processed in .02344 s, 2 queries.