Php 查找最近n篇文章中的用户文章计数

Php 查找最近n篇文章中的用户文章计数,php,mysql,Php,Mysql,我正在试图找到最有效的方法来查找表的最后n行中用户的帖子数量。。我试过了 $db->query_first("SELECT COUNT(*) AS user_recent_posts FROM " . TABLE_PREFIX . "post WHERE userid = $userid AND threadid = '" . $threadinfo['threadid'] . "' AND visible = '1' ORDER BY dateline DESC LIMIT 10" );

我正在试图找到最有效的方法来查找表的最后n行中用户的帖子数量。。我试过了

$db->query_first("SELECT COUNT(*) AS
user_recent_posts FROM " . TABLE_PREFIX . "post WHERE userid = $userid
AND threadid = '" . $threadinfo['threadid'] . "' AND visible = '1'
ORDER BY dateline DESC LIMIT 10" );

我正在尝试获取线程中最后10个帖子中的用户帖子。。但这显然会按用户返回最后10篇文章,无论它们是否在最后10篇文章中

使用子选择首先获取n行,然后计算用户的行数:

$db->query_first("
  SELECT COUNT(b.*) AS user_recent_posts 
  FROM (
    SELECT a.* 
    FROM " . TABLE_PREFIX . "post a
    AND a.threadid = '" . $threadinfo['threadid'] . "' AND a.visible = '1'
    ORDER BY a.dateline DESC LIMIT 10) b
  WHERE b.userid = $userid" );

谢谢,我是一个noob:d这个错误“每个派生表都必须有自己的别名”编辑了我的答案以更正它,但是您已经发现了,不知道为什么您的编辑被拒绝。