2017-04-04 62 views
3

我會嘗試儘可能地解釋。這裏是我的查詢..MySQL從兩張表中獲得標題

SELECT * FROM mm_star_ratings s 
JOIN mm_posts p ON s.post_id = p.postid 
WHERE p.type='B' 
ORDER BY s.rating DESC LIMIT 5 

type='B'是主哨和type='C'是該職位的答覆。在mm_posts中有parentid列設置主帖(B) id爲C。我是否想從mm_posts得到title如果type='C'有嗎?

對我的挑戰是把它與在post_id設置兩個BC

+4

更新您的問題添加適當的數據樣本和預期的結果請 – scaisEdge

+2

感謝您給CLOSE投票。請看下面給出的答案@Mahesh Madushanka至少他理解我的問題:) –

回答

4

您可以使用下面的查詢我的等級表工作,

SELECT s.*,p.*, IF(p.type='C',pp.title,p.title) as title FROM mm_star_ratings s 
JOIN mm_posts p ON s.post_id = p.postid Left Join mm_posts pp on pp.postid=p.parent_id 
ORDER BY s.rating DESC LIMIT 5 
+1

沒有添加s。*和p。*您可以指定所需的列 –

+0

非常感謝代碼。我只需要添加'WHERE p.type ='C''即可獲得標題。 –

+0

@CodeLover:np歡迎您' –