2012-07-09 56 views
0

使用與我的查詢問題,下面是兩個表tbl_tagtbl_tag_usedby。我想顯示在tbl_tag_usedby記錄中使用的tbl_tag中的每條記錄有多少。如何顯示我有多少表中的次,每次記錄被其他表

enter image description here

這裏是,我使用的查詢:

SELECT t.*, COUNT(u.tagid) AS totale FROM tbl_tag t LEFT JOIN tbl_tag_usedby u ON u.tagid = t.id AND t.status =1 GROUP BY u.tagid 

和結果如下:

enter image description here

在這種情況下爲2〜6的記錄id不會出現在查詢結果中,我希望從2到6的記錄ID也顯示出來,並且在字段「totale」中它的值爲0.

任何人都可以幫我嗎?

+0

tbl_tag_usedby是否包含tagid = 2,3,4 ...? – 2012-07-09 09:05:33

回答

3

試試這個:

SELECT t.*, COUNT(t.id) AS totale FROM tbl_tag t LEFT JOIN tbl_tag_usedby u ON u.tagid = t.id AND t.status =1 GROUP BY t.id 
+0

謝謝。你幫我解決了我的問題。 – Fredy 2012-07-09 09:19:12

1

試試這個::

SELECT 
t.*, COUNT(t.id) AS totale 

FROM tbl_tag t 

LEFT JOIN tbl_tag_usedby u ON u.tagid = t.id 
where t.status =1 
GROUP BY t.id 
1

你需要使用LEFT JOIN

SELECT a.id, 
     a.name, 
     COUNT(t.id) AS totale 
FROM tbl_tag a 
      LEFT JOIN tbl_tag_usedby b 
       ON b.tagid = a.id 
WHERE a.status = 1 
GROUP BY a.id 
0

小幅回調加入兩個表:這工作適合我更換COUNT(t.id)COUNT(u.id)

SELECT t.*, COUNT(u.id) AS totale 
FROM tbl_tag t 
    LEFT JOIN tbl_tag_usedby u ON u.tagid = t.id 
where t.status =1 
GROUP BY t.id 
相關問題