2012-08-25 22 views
1

這裏是查詢,我有內聯加入了3個表,現在我正在計算結果中的所有行,即78通過執行php查詢我的管理員,我不想表的結果,我想JST 1行中wchich只寫了就是78,與我們在3 sql內連接表,現在如何計算其中的總行

SELECT count (*) FROM test_table 

做下面的3個內連接表

 SELECT 
mybb_users.uid, 
mybb_users.username, 
mybb_users.avatar, 
mybb_posts.fid, 
mybb_posts.uid, 
mybb_posts.dateline, 
mybb_posts.tid, 
mybb_posts.subject, 
mybb_forums.parentlist, 
mybb_forums.fid 
FROM mybb_forums 
    INNER JOIN mybb_posts ON mybb_forums.fid = mybb_posts.fid 
    INNER JOIN mybb_users ON mybb_posts.uid = mybb_users.uid 
    WHERE mybb_forums.parentlist LIKE '%58%' 
    GROUP BY mybb_posts.tid 
    ORDER BY mybb_posts.dateline DESC 

查詢現在如何計算它的總行數呢?

EDITED

SELECT count(mybb_users.uid) AS totalOfRows 
FROM (

SELECT mybb_users.uid, mybb_users.username, mybb_users.avatar, mybb_posts.fid, mybb_posts.uid AS uidPost, mybb_posts.dateline, mybb_posts.tid, mybb_posts.subject, mybb_forums.parentlist, mybb_forums.fid AS fidForum 
FROM mybb_forums 
INNER JOIN mybb_posts ON mybb_forums.fid = mybb_posts.fid 
INNER JOIN mybb_users ON mybb_posts.uid = mybb_users.uid 
WHERE mybb_forums.parentlist LIKE '%58%' 
GROUP BY mybb_posts.tid 
)T 

錯誤::#1054 - 未知列在 '字段列表' mybb_users.uid「

+0

sekect計數(myb_users.uid)從mybb_forums –

回答

1

好了,如果你不想要的結果,你爲什麼顯示這些字段?一個選擇返回一個表,所以申請數吧:

SELECT 
count(*) 
FROM mybb_forums 
    INNER JOIN mybb_posts ON mybb_forums.fid = mybb_posts.fid 
    INNER JOIN mybb_users ON mybb_posts.uid = mybb_users.uid 
    WHERE mybb_forums.parentlist LIKE '%58%' 
    GROUP BY mybb_posts.tid 

此外,你的帖子groupying,所以,不需要訂購

編輯: 我想查詢我已經貼應該工作,無論如何,如果不是的話,這絕對應該工作:

SELECT sum(Total) AS totalOfRows 
FROM ( 

SELECT 1 as Total 
FROM mybb_forums 
INNER JOIN mybb_posts ON mybb_forums.fid = mybb_posts.fid 
INNER JOIN mybb_users ON mybb_posts.uid = mybb_users.uid 
WHERE mybb_forums.parentlist LIKE '%58%' 
GROUP BY mybb_posts.tid 
)T 
+0

這就是問題所在,這種查詢是給我造成像 + ----- ------ + | count(*)| | ----------- | | 1 | | 2 | | 3 | | 7 | | 4 | | 1 | + ----------- + –

+0

喜歡..什麼?好吧,如果這不起作用,刪除命令到您原來的查詢,使用它作爲子查詢,只是從(你的查詢)選擇計數(*)t –

+0

我知道這個查詢可以工作,但它沒有給出一個單一的記錄,它給所有75個記錄如何回顯數字75 :( –