0
CREATE TABLE Test(
ID PRIMARY KEY AUTO_INCREMENT,
UserID INT,
URL VARCHAR(255),
MyTime DATETIME
)engine=myisam;
样本数据:
ID UserID URL MyTime
1 555 /index 2013-04-01 16:43:21
2 777 /user 2013-03-01 16:43:21
3 555 /user 2013-03-01 13:00:00
4 555 /panel 2013-03-01 16:00:00
5 555 /panel 2013-03-03 15:00:00
现在查询假设选择的所有数据,其中URL不/指数因为/索引是主页,所以我希望它被忽略。此外,它选择的数据必须是最新的记录,忽略/索引数据。它也必须忽略相同的URL,如果它落在最后10条记录中,这意味着如果同一用户多次访问同一页面,我只需要选择其中的一个来包含在的限制10中。这将忽略/面板页有ID 4
用户需要的输出将是:
ID UserID URL MyTime
3 555 /user 2013-03-01 13:00:00
5 555 /panel 2013-03-03 15:00:00
我尝试:
SELECT *
From Test
WHERE URL NOT LIKE '%/index%' AND UserID = '555'
ORDER BY MyTime DESC
LIMIT 10
此查询选择过去数据,但它包含重复的URL,我如何摆脱重复的网址,只有最新的记录与唯一的网址?
感谢您的帮助。
不知道我是如何忘记GROUP BY的。我很尴尬。非常感谢 – GGio
@MattBusche如何显示其他列。你需要包括这些。 – DevelopmentIsMyPassion
@AshReva我更新了,以允许用户拉所有列,但不知道这是他需要什么(虽然问题确实表明) –