2011-08-17 6 views
0

보관 테이블이 있습니다. 열은 PK, 사용자 및 Logdatetime입니다. 사용자가 시스템에 로그인하면 아카이브 테이블에 사용자 및 datetime을 쓰고 있습니다. 사용자는 하루에 여러 번 로그인 할 수 있습니다. ': 00 : 2010-03-16 00 00.000' 특정 데이터에 대한 Sql 쿼리

Logdatetime의 데이터

은 같다

내가 같은 날짜에 사용자가 하루에 모든 사용자 FIRST 로그인 시간을 조회하고 얻을 필요가 : USER1를 ' 2010-03-16 03 : 21 : 00.000 ' user2'2010-03-16 04 : 11 : 00.000 '

사용자 순서는 중요하지 않습니다. 나는 너무 많은 방법을 시도했지만 couldnt는 길을 발견한다. 유일한 해결책은 모든 사용자를위한 쿼리입니다. 그러나 시간이 걸릴 것입니다. 하나의 쿼리 또는 더 효율적인 방법으로이를 수행하는 방법에 대한 아이디어가 있습니까?

PS : 나는 당신이 사용자가 처음 로그인을 원하거나 정당한 먼저 특정 일의 의미합니까 MS SQL Server 2005의

+2

예, 답을 찾아보십시오. 질문은 모두 중복됩니다 (해당하는 경우 분당 최대 스왑). [태그 : 그룹당 최대 값] (http://stackoverflow.com/questions)/tagged/great-n-per-group) –

+1

몇 분 전에 질문을 받았는데 답이 있어야합니다. http://stackoverflow.com/questions/7089777/how-to-select-top-record 같은 그룹 –

답변

1

을 사용하고?

이 쿼리 예는 올바른 방향으로 이끌 수 있습니다.

SELECT [User], MIN(LogDateTime) AS FirstLogin FROM [Archive Table] GROUP BY [User] 
관련 문제