[英]how can I count mysql data with group by
我有一個php網頁,我在使用mysql查詢中的group by計數數據時出現問題
當提交任何問題時,id會自動添加並且idqu = 0如果回答問題,則idqu等於回復問題的id
我的表和數據
id idqu question answer user date
1 0 quest1 test 28042014
2 0 quest2 scott 29042014
3 2 reply1 andy 01052014
4 0 quest3 test 01052014
5 4 reply2 scot 01052014
我的問題是如何計算問題的答復?
quest1 (0)
quest2 (1)
quest3 (1)
此查詢完成此任務。 我把桌子上的名字叫做“ tbl
”
Select q.id, count(a.id) as answers
From tbl q
Left join tbl a on a.idqu=q.id
Where q.idqu=0
Group by q.id
嘗試這個
Select t1.question, count(t2.id) as counts
From table1 t1
Left join table1 t2 on t2.idqu=t1.id
Where t1.idqu=0
Group by t1.id
如果我理解正確,請嘗試:
SELECT question, SUM(CASE WHEN idqu > 0 THEN 1 ELSE 0 END)
FROM tablename
GROUP BY question
select idqu, count(idqu) as reply_count
from table_name
where idqu <> 0
group by idqu
這是每個回復,有一點PHP。 我認為你不需要小組。
$query="SELECT * From YourTable WHERE idqu>0";
$res=mysql_query($query);
mysql_num_rows($res);
如果要在一個問題上選擇回復,請在查詢中添加AND idqu =(yourInt)。
希望我理解並正確回復!
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.