0

私はmysqlクエリを持っています

$raw_resultsplaylists = mysql_query("SELECT songs.*, playlists.title as `playlist_title`
                                 FROM song_main AS songs
                                 JOIN songs_in_list AS playlist_songs 
                                  ON songs.ID = playlist_songs.song_id
                                 JOIN playlists 
                                 ON playlist_songs.playlist_id = playlists.ID
                                WHERE playlists.owner_id = '$userid'") or die(mysql_error());

次のような情報の配列を取得します。

  playlist_title      song_name              song_url        song_artist
     -------------------------------------------------------------------        
     foo1               woops                 www.                -
     foo1               blah                  www.                -
     foo2               blop                  www.                -
     foo1               woop                  www.                -
     foo3               bob                   www.                -      
     foo1               dylan                 www.                -

私の質問は、Mysql 配列をスライスして、同じ行をすべてplaylist_title別の配列に取得して、たとえば別の html テーブルに表示できるようにする方法です。

html テーブル 1:

 playlist_title      song_name              song_url        song_artist
    -------------------------------------------------------------------        
     foo1               woops                 www.                -
     foo1               blah                  www.                -
     foo1               woop                  www.                -    
     foo1               dylan                 www.                -

html テーブル 2

    playlist_title      song_name           song_url        song_artist
     -------------------------------------------------------------------        
     foo2               blop                  www.                -
     foo2               dylan                 www.                -

等...

4

3 に答える 3

0

アイデアを描くだけ..

do{

  $groupedItems[$row['pname']][] = $row; //every row with the same pname will be "grouped" in the same array level

}while..

その後...

foreach($groupedItems as $group){
  //bla bla
}
于 2013-11-15T04:12:58.897 に答える
0

SQL には「配列」はありません。それはすべて行と列です。あなたが望むのは、おそらく次のとおりです。

SELECT * FROM table_name WHERE pname='foo1'

多分:

SELECT * FROM table_name ORDER BY pname

アプリケーションで分割を実行できる場所。

于 2013-11-15T04:08:36.220 に答える