我需要获取最近的记录,这些记录重复两次以上。带条件的MySQL最新记录
结构:
CREATE TABLE IF NOT EXISTS `tags` (
`tag_n` int(10) NOT NULL AUTO_INCREMENT,
`post_n` int(10) NOT NULL,
`tag` varchar(30) COLLATE utf8_bin DEFAULT NULL,
PRIMARY KEY (`tag_n`),
KEY `tag` (`tag`),
KEY `post_n` (`post_n`),
) ENGINE=MyISAM DEFAULT CHARSET=utf8 COLLATE=utf8_bin;
记录:
SELECT * FROM tags ORDER BY post_n DESC LIMIT 0 , 30
我的查询:
SELECT tag, COUNT(post_n) AS tags_count
FROM tags
GROUP BY tag HAVING tags_count>=2
ORDER BY post_n DESC LIMIT 5
但是我得到错误的结果,最新肯定是“xpro”,不明白是什么错。
任何想法?
p.s. 对不起,我的英语。
我注意到的第一件事是,您要求重复两次以上的记录,但是您的查询会多次重复查找记录('> = 2'而不是'> 2')。是吗?否则,你应该告诉我们你得到了什么结果以及它有什么问题。 – 2010-10-07 13:43:08
对不起,已经改正 – swamprunner7 2010-10-07 13:52:56