Foxtable(狐表)用户栏目专家坐堂 → SQLJoinTableBuilder能否合并多个结构相同的查询表?


  共有14564人关注过本帖树形打印复制链接

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

帅哥哟,离线,有人找我吗?
狐狸爸爸
  1楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:管理员 帖子:47511 积分:251479 威望:0 精华:91 注册:2008/6/17 17:14:00
  发帖心情 Post By: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
 
余下步骤一样的....
 
 

 回到顶部
帅哥哟,离线,有人找我吗?
狐狸爸爸
  2楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:管理员 帖子:47511 积分:251479 威望:0 精华:91 注册:2008/6/17 17:14:00
  发帖心情 Post By:2011/6/13 14:51:00 [显示全部帖子]

呵呵,合并的问题我看看

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


 回到顶部
帅哥哟,离线,有人找我吗?
狐狸爸爸
  3楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:管理员 帖子:47511 积分:251479 威望:0 精华:91 注册:2008/6/17 17:14:00
  发帖心情 Post By:2011/6/13 15:26:00 [显示全部帖子]

呵呵,合并我会搞定的。

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


 回到顶部
帅哥哟,离线,有人找我吗?
狐狸爸爸
  4楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:管理员 帖子:47511 积分:251479 威望:0 精华:91 注册:2008/6/17 17:14:00
  发帖心情 Post By:2011/6/13 15:37:00 [显示全部帖子]

我明白了,你只能move了:

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

 

我看看能否改进。


 回到顶部
帅哥哟,离线,有人找我吗?
狐狸爸爸
  5楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:管理员 帖子:47511 积分:251479 威望:0 精华:91 注册:2008/6/17 17:14:00
  发帖心情 Post By:2011/6/13 16:11:00 [显示全部帖子]

那个是不行的吧。

在生成查新表之后,再用foxtable自己的功能增加表达式列算了。


 回到顶部
帅哥哟,离线,有人找我吗?
狐狸爸爸
  6楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:管理员 帖子:47511 积分:251479 威望:0 精华:91 注册:2008/6/17 17:14:00
  发帖心情 Post By:2011/6/13 21:46:00 [显示全部帖子]

呵呵,事后增加表达式列,不是一样简单吗?

 

刚刚细想一样,表达式由不同表的列组成,也是可以的,打开示例文件“关联演示.Table”,在命令窗口执行下面的代码:

 

Dim jb As new SQLJoinTableBuilder("查询表1","订单")
jb.AddTable("订单","产品编号","产品","产品编号")
jb.AddTable("订单", "客户编号","客户","客户编号")
jb.AddCol("产品","产品名称","产品")
jb.AddCol("客户","客户名称", "客户")
jb.AddCols("订单", "日期", "数量")
jb.AddExp("订单","[数量] *{产品}.单价","金额")
jb.Build

 

查询表的金额列,由订单表的数量和产品表的单价计算得出,注意表达式中单价列表达方式:表名用大括号,列名不能用任何括号。

SQLGroupTableBuilder和SQlCrossTableBuilder,都可以用这样的方式。

[此贴子已经被作者于2011-6-13 21:55:28编辑过]

 回到顶部
帅哥哟,离线,有人找我吗?
狐狸爸爸
  7楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:管理员 帖子:47511 积分:251479 威望:0 精华:91 注册:2008/6/17 17:14:00
  发帖心情 Post By:2011/6/13 22:01:00 [显示全部帖子]

合并的问题,下次增加一个Union方法,以后Combine组合,Union合并.

增加表达式的语法应该改一下,没有必要指定表的,除非不同的表有同名列。

[此贴子已经被作者于2011-6-13 22:24:57编辑过]

 回到顶部
帅哥哟,离线,有人找我吗?
狐狸爸爸
  8楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:管理员 帖子:47511 积分:251479 威望:0 精华:91 注册:2008/6/17 17:14:00
  发帖心情 Post By:2011/6/14 15:57:00 [显示全部帖子]

呵呵, 下次不会这样了。

 回到顶部