我创建了一个发布系统以及一个喜欢的系统。我想选择最喜欢的前三个帖子,但我不知道该怎么做。
我有这段代码,但我无法弄清楚如何选择多行。
$get_pop_posts = mysql_query( "SELECT MAX( likes ) AS popular_posts FROM `posts`;" );
while($fetch_pop_posts = mysql_fetch_array($get_pop_posts)){
$pop_posts = $fetch_pop_posts['popular_posts'];
echo $pop_posts;
}
这段代码只从数据库中提取一行。
答案 0 :(得分:2)
SELECT *
FROM posts
order by likes desc
limit 3
答案 1 :(得分:0)
SELECT MAX(喜欢)AS popular_posts FROM posts
由于MAX()函数,该查询返回单个结果。
试试这个 SELECT TOP 3 FROM posts
答案 2 :(得分:0)
首先为每个帖子提供唯一ID,每次发布新帖子时都应自动递增。
然后, SELECT id FROM posts by likes desc limit 3
将这些id作为数组传递给完整的帖子。