Foxtable(狐表)用户栏目专家坐堂 → [求助]SQL语句


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

主题:[求助]SQL语句

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


加好友 发短信
等级:婴狐 帖子:38 积分:351 威望:0 精华:0 注册:2014/3/27 10:00:00
[求助]SQL语句  发帖心情 Post By:2014/3/28 15:21:00 [只看该作者]

表A的列名:计划编码、公司编码、计划起始日期、计划结束日期、申请资金、是否上报、是否归档等。

现想筛选出每个公司最新的计划记录,即每个公司只有一条记录,这条记录是该公司最后上报的计划,可以从起始结束日期判断,但是特殊情况,如某公司某次没报计划,另一情况是每家公司每次计划的日期范围都可以不同(如:A公司本次计划从本月4号至本月11号,但下次不一定只有7天,下次可能是12号至23号不等;B公司的计划,更会参差不齐了,不过一般都是正常情况,每周报一次计划)。

请问,如何用SQL语句进行筛选?

或者,如何用FOXtable实现以上功能。我是希望在窗口打开后就能在表控件中看到结果。

初学者,见笑了,请各位大侠不惜指教!


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


加好友 发短信
等级:管理员 帖子:47448 积分:251054 威望:0 精华:91 注册:2008/6/17 17:14:00
  发帖心情 Post By:2014/3/28 15:26:00 [只看该作者]

用Select语句找出最后上报的,可以看看:

http://www.foxtable.com/help/topics/2473.htm

 

 

在窗口看到结果的话:

http://www.foxtable.com/help/topics/2912.htm

 

[此贴子已经被作者于2014-3-28 15:27:39编辑过]

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


加好友 发短信
等级:婴狐 帖子:38 积分:351 威望:0 精华:0 注册:2014/3/27 10:00:00
  发帖心情 Post By:2014/3/28 17:33:00 [只看该作者]

嗯,原来在这里。感谢狐爸。。顺问一句,你是狐表之父?


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


加好友 发短信
等级:婴狐 帖子:38 积分:351 威望:0 精华:0 注册:2014/3/27 10:00:00
  发帖心情 Post By:2014/3/30 11:32:00 [只看该作者]

感谢狐爸的指导,最后我在窗口的afterload事件中搞定,就两行代码。

Dim csql As String ="Select a.公司编码,c.公司名称,a.计划编码,a.编号,a.计划起始日期,a.计划结束日期,a.已上报,a.已归档,a.期初可用资金,a.编制日期,a.最后修改日期 FROM {周资金计划主表} a inner join ((Select 公司编码,max(计划起始日期) As 计划起始日期,max(计划结束日期) As 计划结束日期 from {周资金计划主表} group by 公司编码) b inner join {下属公司} c on  b.公司编码=c.公司编码) on a.公司编码=b.公司编码 And a.计划起始日期=b.计划起始日期 And a.计划结束日期=b.计划结束日期"
Tables("周计划上报状况查询_计划主表").Fill(csql,True)

 


 回到顶部