Mysql sql连接和计数

Mysql sql连接和计数,mysql,sql,join,count,Mysql,Sql,Join,Count,假设我有这个疑问 SELECT ft.*, m.* FROM forum_topics ft INNER JOIN members m ON ft.author = m.id WHERE ft.forum = '$forum' ORDER BY ft.lastpost DESC 我还想从forum\u repress表中获取其中的行数,其中id=ft.id。 我如何才能做到这一点?根据您的DB实现,这可能会起作用: SELECT ft.*,

假设我有这个疑问

 SELECT ft.*, m.*
   FROM forum_topics ft
     INNER JOIN members m ON ft.author = m.id
     WHERE ft.forum =  '$forum'
     ORDER BY ft.lastpost DESC 
我还想从
forum\u repress
表中获取其中的行数,其中
id=ft.id

我如何才能做到这一点?

根据您的DB实现,这可能会起作用:

 SELECT ft.*, 
        m.*,
        ( SELECT count(1)  
            FROM forum_replies fr 
           WHERE fr.id = ft.id) AS nr_of_replies 
   FROM forum_topics ft
     INNER JOIN members m ON ft.author = m.id
     WHERE ft.forum =  '$forum'
     ORDER BY ft.lastpost DESC

SELECT ft.*, m.*, fr.ReplyCount
FROM forum_topics ft
INNER JOIN members m ON ft.author = m.id
inner join (
   Select Id, Count(*) as ReplyCount
   from forum_replys 
   group by id
 ) as fr 
 on ft.Id = fr.Id
 WHERE ft.forum =  '$forum'
 ORDER BY ft.lastpost DESC