2013-02-05 136 views
-1

我有一个线程表和一个评论表。一个线程可以有很多意见 当我做mysql查询。由于许多评论它变成重复的线程。 如何分组tid?PHP循环foreach重复

我试过在PHP的foreach,但仍然不知道。

Array 
(
    [0] => Array 
     (
      [tid] => 110 
      [title] => This is question 
      [vid] => 175 
      [yesno] => 1 
     ) 

    [1] => Array 
     (
      [tid] => 110 
      [title] => This is question 
      [vid] => 179 
      [yesno] => 0 
     ) 
) 

其实我是想这

Array 
(
    [0] => Array 
     (
      [tid] => 110 
      [title] => This is question 

      [0] => Array(
         [vid] => 175 
         [yesno] => 1 
        ) 
      [1] => Array(
         [vid] => 176 
         [yesno] => 0 
        ) 
     ) 

) 
+1

使用'选择不同thread.tid,thread.title,... ' –

+1

'GROUP BY'在你的MySQL查询中。 – BenM

+1

'group by thread.tid'也可以工作 –

回答

0

您可以使用您的查询是这样的

"SELECT ... FROM tablename GROUP BY thread.tid" 
     ^--- Field name 
0
$query='select distinct tid,title from thread order by tid'; 
$thread_id=mysql_query($query); 
while($result=mysql_fetch_assoc($thread_id)) 
{ 
    $data[]=$result; 
    $query1='select vid,yesno from comments where tid='.$result['tid']; 
    $comment=mysql_query($query1); 
    while($result1=mysql_fetch_assoc($comment)) 
    { 
     $data['comments'][]=$result1; 
    } 
} 
print_r($data); 
+0

如何使用1查询?因为我使用了LEFT JOIN – vzhen