Foxtable(狐表)用户栏目专家坐堂 → [求助]有关INNER JION问题


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

主题:[求助]有关INNER JION问题

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


加好友 发短信
等级:幼狐 帖子:110 积分:818 威望:0 精华:0 注册:2012/5/24 14:18:00
[求助]有关INNER JION问题  发帖心情 Post By:2012/6/12 15:47:00 [只看该作者]

如果只是将表2的有效期合并到表1中去,按照帮助里的方法可行的。如果我在表2中增加一列为有效编号,这样的话怎么才能合并到一起去?

 

请看附件,帮忙一下,如何改好?


 

 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:查询.table

合并后显示如下:

 

 

 序号    名称    编号    类别    有效编号    有效期  
   1   鱼罐    001   罐头          
   2   香肠   002  肉类      20120103   2012-12-12 
   3  娃哈哈     003    饮料      20130101   2013-04-07
   4   可乐    004   饮料      20120104   2012-12-12 

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


加好友 发短信
等级:九尾狐 帖子:2193 积分:13902 威望:0 精华:2 注册:2012/2/25 10:59:00
  发帖心情 Post By:2012/6/12 17:03:00 [只看该作者]

问题不是很明确,是想把新的有效期覆盖旧的有效期吗?

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


加好友 发短信
等级:八尾狐 帖子:1812 积分:12999 威望:0 精华:14 注册:2008/10/11 18:07:00
  发帖心情 Post By:2012/6/13 7:42:00 [只看该作者]

要学会变通,给你方法可以,但不会一包到底!
另:1.[有效期]应为日期时间型;
    2.Fox是数据库,库中不应随便增加空行!
  
Dim tb1 As Table = Tables("窗口1_Table1")
Dim sql As String
sql ="Select a.序号,a.名称,a.编号,a.类别,b.有效编号,b.有效期 From {表1} a INNER JOIN (Select  编号,"
sql+ ="Max(iif(有效期 > date() , 有效编号, Null)) As 有效编号,Max(iif(有效期 > date() , 有效期, Null)) "
sql+=" As 有效期 From {表2} where 编号 is not null Group By 编号) b on a.编号 = b.编号"
tb1.Fill(sql,"",True)

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


加好友 发短信
等级:幼狐 帖子:110 积分:818 威望:0 精华:0 注册:2012/5/24 14:18:00
  发帖心情 Post By:2012/6/13 8:19:00 [只看该作者]

谢谢don,我原先有效编号就直接引用,没有用IIF来筛选,结果运行时老出错。

 回到顶部