2011-03-23 62 views
0

我曾經在第一次登錄到Syatem時獲取用戶的登錄時間,用戶正在做的所有活動都將存儲在名爲「活動」的單獨列中」。我的問題是用戶可以在特定的日子多次登錄系統,但我只想檢索第一次登錄時間。 LogOn時間正在出現,當我寫一個查詢獲取基於活動的時間如下。從數據庫中獲取日期時間變量的問題

   Time    User     Activity 
      '3/23/2011 9:55:00AM' kk     LogOn 
      '3/23/2011 5:30:00PM' kk     LogOn 

我寫一個查詢以檢索這樣

選擇的startDateTime,用戶,從AgentLog其中活性=「登錄」活動這些值。所以,任何人都可以給我小的幫助,我如何才能檢索給用戶的第一次登錄時間。我使用的Sql Server 2008,將有Somany天,用戶登錄,所以每天我需要獲得登錄時間

回答

1

獲取每一天,他們在登錄使用以下組的最早時間:

Select min(StartDateTime) 
from AgentLog 
where Activity='LogOn' and 
    User = 'Username' 
group by datepart(day, StartDateTime), 
    datepart(month, StartDateTime), 
    datepart(year, StartDateTime) 
+0

謝謝你@Steve Mayne,查詢針對不同用戶和不同日期制定。 – 2011-03-23 11:18:25

0

如果您不會將時間存儲爲字符串,但作爲時間戳(以秒爲單位),這將是很容易只需要選擇數據:

Select StartDateTime,Activity from AgentLog where Activity='LogOn' AND time>timeofday ORDER by time LIMIT 1 

其中的TimeOfDay是當天的午夜時間戳

+1

我相信LIMIT 1只是MySQL .... – 2011-03-23 09:44:35

相關問題