2014-09-23 42 views
2

這誠實地聽起來像在MySql中的函數的工作,但我想知道是否有一種方法來進行查詢,選擇記錄的日期,實現計數= xMySQL獲取記錄的日期,其中計數達到

設置:1000記錄每個具有相同的資格條件..可以說USER_ID和訪問信息和CREATE_DATE

所需的查詢結果:選擇100訪問的日期

SELECT create_date 
FROM user_visits 
HAVING COUNT(id) = 100; 
+0

你有沒有自動增量欄? – 2014-09-23 17:50:38

+0

@MKhalidJunaid是,訪問表的主鍵。 – Zombiesplat 2014-09-23 17:51:32

+0

COUNT(id)'或COUNT(UNIQUE_ID)',這會產生巨大的區別...(或者'id'是表的主鍵?)。 – Wrikken 2014-09-23 17:54:32

回答

4

您可以使用命令通過你的auto_increment列和limi t 99,1挑第100次訪問

SELECT create_date 
FROM user_visits 
ORDER BY your_auto_increment_column 
LIMIT 99,1 
+0

好的,這在技術上是我的問題的答案。所以我可能會爲下一部分打開一個新的問題,但現在我需要爲多個用戶和多個級別執行此操作..所以我正在考慮通過user_id爲多個用戶創建一個組,然後如何獲得第100次和第900次訪問日期? – Zombiesplat 2014-09-23 17:56:12

+1

@AlanAsher是的,這可以通過使用用戶定義的變量來爲屬於同一用戶的行分配排名。今天,我已經給出了您所問的類似問題的答案,但在這種情況下,存在相同的年齡,並且在您的情況下有用戶[* SQL爲每個年齡返回100個隨機行*](http://stackoverflow.com/questions/25987083/sql-return-100-random-rows-for-each-age/25987337#25987337),是的請問一個新的,我會嘗試回答那個問題 – 2014-09-23 18:03:08