2014-09-23 87 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

相关问题