2016-04-22 101 views
0

我想在一分鐘內找到創建的最大數量的記錄,我可以做到這一點與Java程序,但我想知道這是否可以用SQL查詢 例如,在記錄用一分鐘創造了以下數據最大數量爲182016-03-14 18:22分鐘SQL Server查詢來檢查一分鐘內創建的最大記錄

 ID     CreatedAt 

    3197912   2016-03-14 18:23:38.930 
    3197911   2016-03-14 18:23:34.857 
    3197910   2016-03-14 18:23:34.847 
    3197909   2016-03-14 18:23:16.587 
    3197908   2016-03-14 18:23:14.937 
    3197907   2016-03-14 18:23:11.617 
    3197906   2016-03-14 18:23:00.013 
    3197905   2016-03-14 18:22:59.840 
    3197904   2016-03-14 18:22:54.453 
    3197903   2016-03-14 18:22:51.017 
    3197902   2016-03-14 18:22:37.893 
    3197901   2016-03-14 18:22:35.147 
    3197900   2016-03-14 18:22:29.437 
    3197899   2016-03-14 18:22:27.383 
    3197898   2016-03-14 18:22:23.897 
    3197897   2016-03-14 18:22:22.227 
    3197896   2016-03-14 18:22:20.890 
    3197895   2016-03-14 18:22:19.317 
    3197894   2016-03-14 18:22:18.063 
    3197893   2016-03-14 18:22:15.447 
    3197892   2016-03-14 18:22:08.693 
    3197891   2016-03-14 18:22:04.927 
    3197890   2016-03-14 18:22:01.417 
    3197889   2016-03-14 18:22:00.637 
    3197888   2016-03-14 18:22:00.283 
    3197887   2016-03-14 18:21:59.597 
    3197886   2016-03-14 18:21:56.713 
    3197885   2016-03-14 18:21:56.677 
    3197884   2016-03-14 18:21:56.640 
    3197883   2016-03-14 18:21:56.603 
    3197882   2016-03-14 18:21:56.570 
    3197881   2016-03-14 18:21:56.537 
    3197880   2016-03-14 18:21:55.687 
    3197879   2016-03-14 18:21:51.543 
    3197878   2016-03-14 18:21:49.730 
    3197877   2016-03-14 18:21:47.340 
    3197876   2016-03-14 18:21:46.590 
    3197875   2016-03-14 18:21:40.293 
    3197874   2016-03-14 18:21:34.993 
    3197873   2016-03-14 18:21:29.563 
    3197872   2016-03-14 18:21:18.043 
    3197871   2016-03-14 18:21:16.490 
    3197870   2016-03-14 18:21:13.827 
    3197869   2016-03-14 18:21:00.783 
    3197868   2016-03-14 18:20:46.100 

有人可以幫助我?

+0

是微小的相對彼此的,如'22內:56.7 - 22:57.7'或相同的絕對分鐘'22內:56.0 - 22:57.0'? –

+0

它應該在絕對分鐘'22:56.0 - 22:57.0' – RanPaul

+0

只是一個建議,你可以考慮設置[小提琴](http://sqlfiddle.com/),讓人們更容易測試答案。 –

回答

1
select cast(dt as date), datepart(hh, dt), datepart(mm, dt), datepart(ss,dt) 
    , count(*) 
from table 
group by cast(dt as date), datepart(hh, dt), datepart(mm, dt), datepart(ss,dt) 
order by count(*) desc 
1
select TOP 1 myID,DateWithMinute from 
(select count(ID) as myID,convert(varchar(16),createdat,120) as DateWithMinute 
from yourtable 
group by convert(varchar(16),createdat,120) 
order by count(ID) desc)