Foxtable(狐表)用户栏目专家坐堂 → 排除重复值


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

主题:排除重复值

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


加好友 发短信
等级:二尾狐 帖子:558 积分:4352 威望:0 精华:2 注册:2011/4/18 8:27:00
排除重复值  发帖心情 Post By:2014/1/8 12:51:00 [只看该作者]

筛选“销售明细表”所有商品最近销售价,用于导出客户价格表,下面代码不能实现,请问用哪种方法效率较高?(假如有几万行)

 

Tables("销售明细表").Sort = "送货日期 DESC"
Tables("销售明细表").RepeatFilter("货品编号", 1)


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


加好友 发短信
等级:狐神 帖子:6843 积分:43298 威望:0 精华:0 注册:2009/3/2 14:07:00
  发帖心情 Post By:2014/1/8 12:55:00 [只看该作者]

再谈INNER JOIN

一般用户可以忽略本节内容。

我们已经知道,通过INNER JOIN语句可以查询多个表的数据,其中的表可以是另一个Select语句,利用这个功能,可以完成很多用常规编码很难解决的问题。

你可以打开CaseStudy目录下的示例文件“统计演示.table”来测试下面的Select语句。

示例一

例如我们要查询出每个产品最近一次订购的日期、数量以及客户,可以使用下面的Select语句:

Select a.产品,a.客户,a.日期,a.数量 From {订单} a INNER JOIN (Select 产品,Max(日期) As 日期 From {订单} Group By 产品) b on a.产品 = b.产品 And a.日期 = b.日期

上面的Select语句,其实有两个表,分别是a和b,a表就是订单表,红色部分的语句,给订单表指定了一个别名"a",b表就上面绿色部分的Select语句,注意这段Select语句要用括号括起来,在括号之后指定别名“b”。

示例二

再例如,我们要查询出每个产品订购数量最大的订单,Select语句如下:

Select a.产品,a.客户,a.日期,a.数量 From {订单} a INNER JOIN (Select 产品,Max(数量) As 数量 From {订单} Group By 产品) b on a.产品 = b.产品 And a.数量 = b.数量 Order By a.产品


 回到顶部