2012-03-15 27 views
1
SELECT a.[Evaluation Number], a.[CSO Name], a.service 
    , a.[Date of call], a.[Name of Monitor] 
    , a.[Date Sheet Completed] 
FROM [KD call monitoring] AS a 
WHERE a.[Evaluation Number] 
    IN (SELECT TOP 1 [Evaluation Number]  
     FROM [KD call monitoring] b  
     WHERE b.[CSO Name] = a.[CSO Name]    
      AND b.[Date of Call] =     
       (SELECT MAX([date of call])     
       FROM [KD call monitoring]     
       WHERE [cso name] = a.[CSO Name])  
       ORDER BY [Evaluation Number]); 

这是我在我的通话评估数据库工作的代码,它是订购条目,所以我知道哪些员工没有监听他们的电话一段时间。然而,它从第31日开始直到第(febuary)月底(大约在列表的中间)罚款,然后在安置下来之前放置随机的人员参赛作品,并给予我最近评估的人员和参赛作品。
此列表只需要显示每个人一个条目 - 最新的一个。
即时通讯不知道,如果它因为闰年或其他事情搞乱了,但我不知道如何解决它!
即时通讯使用ACCESS XP。我会附上一个图像,但即时消息一个新的用户,所以不允许!SQL查询排序错误,不知道为什么

+4

您的最外层查询似乎没有'ORDER BY',因此最终的结果集不会被排序。 – markblandford 2012-03-15 16:27:47

+0

将@ [通话日期]添加到外部查询,如@creamyegg所述。 – Fionnuala 2012-03-15 16:38:57

+0

@creamyegg。发布这个答案。 – swasheck 2012-03-15 16:55:32

回答

5

您的最外层查询似乎没有ORDER BY,因此最终的结果集将不会被排序。

+0

想通了,谢谢你的帮助! – Kris 2012-03-16 10:59:17

相关问题