自从上次提问以来已经过了相当长一段时间,但我一直在尝试使用SQL构建自己的论坛系统时遇到了问题。
我的问题背景是,我正在尝试创建一个函数来显示最受欢迎的主题,这取决于其拥有的回复数以及最新回复的时间。
通过一些阅读,我制作了这个SQL语句。
然后我使用PDO的
为了解决问题,我使用
我的问题基本上是这样的:为什么它不能返回多行,我该如何让它返回多行?
我的问题背景是,我正在尝试创建一个函数来显示最受欢迎的主题,这取决于其拥有的回复数以及最新回复的时间。
通过一些阅读,我制作了这个SQL语句。
SELECT
topics.id,
topics.authorID,
topics.lastReply
FROM
ms_topics as topics
INNER JOIN
(SELECT inTopic FROM ms_posts) as rcount
ON
rcount.inTopic = topics.id
ORDER BY
topics.lastReply DESC,
count(rcount.inTopic)
然后我使用PDO的
fetchAll()
函数将结果存储到一个变量中。$GetPopular = $db->prepare('SQL Statement Above');
$GetPopular->execute();
$Populars = $GetPopular->fetchAll();
为了解决问题,我使用
var_dump()
对$populars
进行故障排除,结果只返回数据库中的一行。array(1) { [0]=> array(3) { ["id"]=> string(1) "4" ["authorID"]=> string(1) "1" ["lastReply"]=> string(19) "2014-06-08 19:49:50" } }
我的问题基本上是这样的:为什么它不能返回多行,我该如何让它返回多行?