2010-11-20 88 views
0

我有2个表。访问声明问题(重复数据)

第一表,APPTMT

QNO,TrackNo,TmStamp

01,1,2010年9月30日

02,2,2010年9月30日

01 ,2,10/01/2010

02,4,10/01/2010

01,如图1所示,10/02/2010

02,如图3所示,10/02/2010

第二表,请访问

QueueNo,TrackNo,TmStamp,详细

01 1,2010年9月30日,暂无产品说明

02,2,2010年9月30日,没有评论

03,2,2010年9月30日,暂无产品说明

01,2,10/01/2010,没有言论

02,4,10/01/2010,没有言论

03,4,10/01/2010,无备注

01,1,10/02/2010,没有言论

02,3,10/02/2010,没有言论

03,3,10/02/2010,没有言论

注意:还有其他的列和更多的数据进行参观表

我想创建报表的查询。

我应该只有6行,因为APPTMT表中只有6行。

但我得到的不仅仅是这些。

任何想法如何做到这一点?

回答

1
  1. 在您的查询中,您需要在匹配字段上连接您的表(将字段Apptmt.Qno拖至Visit.QueueNo,Apptmt.TrackNo以Visit.trackNo)。
  2. 在,让你在副本输出的话,你还不如用GROUP BY:单击工具栏中的西格玛符号,并指定哪些字段是GROUP BY,这是SUM,等...
+0

我已经尝试了你的第一步。 数据仍然重复。 我不是很清楚.. 任何示例? – william 2010-11-20 04:46:24

+0

你在Apptmpt表中有多重复?有两个记录,01,1。由于thre也是2个这样的记录在另一个表中,这将给你4个记录加入!我怀疑你的数据库设计有缺陷,或者你没有提供足够的信息。 – 2010-11-20 04:52:28

+0

SELECT VISIT.QueueNo,VISIT.BranchName,VISIT.EnterTime,VISIT.NextTime,VISIT.EndTime,VISIT.StartTime,APPTMT.TrackNo,APPTMT.ApptTime,APPTMT.TmStamp FROM VISIT INNER JOIN APPTMT ON (APPTMT.TrackNo = VISIT.TrackNo和APPTMT.QNo =(CStr(VISIT.QueueNo))) 其中 (CLng(格式(APPTMT.TmStamp,“yyyyMMdd”))> = 20101001和CLng(格式(APPTMT.TmStamp,“yyyyMMdd” ))<= 20101030) 和(CLng(格式(VISIT.TmStamp,“yyyyMMdd”))> = 20101001和CLng(格式(VISIT.TmStamp,“yyyyMMdd”))<= 20101030) – william 2010-11-20 04:56:04