2013-03-31 120 views
0

我有数据库的季节,它包含有关电视剧这样的信息:集团集由DB

name - Californication 
episode - 3 
season - 6 

name - Californication 
episode - 4 
season - 6 
.. 
name - Californication 
episode - 1 
season - 7 

我想要得到这样的输出:

Season 6: 
episode 3 
episode 4 

Season 7: 
episode 1 
episode 2 
.... 

在几个方面尝试,甚至成功了,但我相信最好在这里问一个简单的方法。 谢谢

+0

成功了吗?查询,表名,列名等在哪里? –

+0

你能展示你想出的东西吗,所以我们可以看看我们是否有更好的建议? – SomeSillyName

+0

这是非常可怕的想法,得到了多少季节的数量,然后在循环中运行几个查询,所以我相信什么会更好:D – Treat

回答

0

我会做所有的分组在PHP中。

$seasons = array(); 
while ($row = $result->fetch()) { 
    if (!isset($seasons[$row->season]) { 
     $seasons[$row->season] = array(); 
    } 
    $seasons[$row->season][] = $row->episode; 
} 

结果是多维数组与每个季节作为其发作作为值的阵列的密钥。

+0

尝试过这种方式 '$ seasons = array(); ($行= mysql_fetch_assoc($ k)){ if(!isset($ seasons [$ row ['season']])){{{row ['season']] = array( ); } $ seasons [$ row ['season']] [] = $ row ['episode']; 的print_r($季节);' 得到了一些非常讨厌的输出 '阵列 ( [6] =>数组 ( [0] => 11 ) ) 阵列 ( [6 ] =>数组 ( [0] => 11 [1] => 10 ) ) 阵列 ( [6] =>数组 ( [0] => 11 [1] => 10 [2] => 9 ) ) ' 我做了什么错误? – Treat

+0

@Treat对我来说看起来不错,但是你不想''while'循环之外的'print_r'? –

+0

好吧,这是早上6点:D谢谢,这就是我一直在寻找:) – Treat