2013-02-23 41 views
0

對於問題標題我很抱歉,但我沒有得到任何合適的詞語來定義。PHP:只輸出一次相同的帖子ID並添加該帖子的媒體

我有同樣的職位表中多個媒體現在我想輸出數據在下面的格式

Post ID 1 
------------------------ 
media1, media2, media3 
------------------------ 

Post ID 2 
------------------------ 
media1, media2, media3 
------------------------ 

so on... 

這裏是表像 enter image description here

我加入上面的表格用下面的查詢

SELECT wp_posts.ID, wp_posts.post_author, wp_posts.post_title, wp_posts.post_status, wp_posts.post_type, 
wp_review_media.post_id, wp_review_media.user_id, wp_review_media.id, wp_review_media.image_name, wp_review_media.`status`, 
wp_users.ID, wp_users.user_login 

FROM wp_posts 
RIGHT OUTER JOIN wp_users ON wp_users.ID = wp_posts.post_author 
RIGHT OUTER JOIN wp_review_media ON wp_posts.ID = wp_review_media.post_id 

WHERE wp_posts.post_status = 'publish' AND wp_review_media.`status` = 0 

目前它給這個循環的輸出格式如下

<?php 
if ($medias) { 
    foreach ($medias as $media) { 
?> 
     <tr> 
      <td><?php echo $media->ID; ?></td> 
      <td><?php echo $media->post_title; ?></td> 

     </tr> 
<?php } 
} else { ?> 
     <tr> 
     <td>No Record Found!</td> 
     <tr> 
<?php } ?> 

輸出:

Post ID 1 
--------- 
media1 

Post ID 1 
--------- 
media2 

Post ID 1 
--------- 
media3 

Post ID 2 
--------- 
media1 

Post ID 2 
--------- 
media2 

Post ID 2 
--------- 
media3 

so on.... 

因此,誰能幫助我瞭解我怎樣才能得到結果我上面描述。

非常感謝......

回答

1

假設你只是想id和媒體的列表,使用GROUP_CONCAT

SELECT wp_posts.ID, GROUP_CONCAT(wp_posts.post_title) titles 
FROM wp_posts 
    RIGHT OUTER JOIN wp_users ON wp_users.ID = wp_posts.post_author 
    RIGHT OUTER JOIN wp_review_media ON wp_posts.ID = wp_review_media.post_id 
WHERE wp_posts.post_status = 'publish' AND wp_review_media.`status` = 0 
GROUP BY wp_posts.ID 
+0

這隻會輸出文章的標題吧?比我需要運行另一個查詢來獲得媒體?我以正確的方式思考? – 2013-02-23 18:15:43

+0

@pixelngrain - 不完全確定你在問什麼。考慮到上面的php代碼,使用GROUP_CONCAT將在單行(PostId1; Title1,Title2,Title3)和(PostId1; Title1 - PostId1; Title2 - 等)中生成Post ID和Post_Titles。祝你好運。 – sgeddes 2013-02-23 20:33:58

+0

如果您參考了我的圖表,而不是我想要的所有帖子編號,並且該帖子編號的所有媒體都應顯示在該組下。我試圖通過運行多個查詢,但它比如何將所有媒體渲染到所有後期 – 2013-02-24 05:38:30