2013-02-05 131 views
0

我正在創建一個社交網站。我有一個提醒選項,它需要根據它到達各個div的時間顯示好友請求和未讀消息。實際上,我缺乏有關如何顯示兩個表格的結果。一定幫助我。從多個表中選擇結果

我的表是:

1)sk_friends=>[friendship_id, from_user_id, to_user_id, status,date] 

狀態包含acceptedpending作爲值。

2)sk_messages=>[msg_id, from_user_id, to_user_id,text, date, status] 
+0

和什麼有關消息狀態(已讀或未讀)查詢?它不在那裏。 – Uttara

+0

你想要得到什麼結果> –

+0

@JW我想在div中顯示結果。如果當前行是朋友請求,我需要顯示他/她的名字,圖片,兩個按鈕用於接受或拒絕。如果這是一條消息,我需要顯示消息,發件人姓名和他的照片 – Techy

回答

0
SELECT * FROM sk_friends JOIN sk_message ON sk_friends.from_user_id = sk_message.from_user_id 

這將是檢索記錄基本查詢兩個表..

試試這個..但不知道有多少會幫助你

+0

我需要顯示好友請求,如果它在當前行,或者消息 – Techy

+0

如果您只想檢索請求,則消息表不是必需的,不是嗎? – KAsh

+0

如果它在當前行中,我還需要顯示這些消息。也就是說,如果有消息發出,則會發出好友請求,消息也會出現,我需要顯示好友請求,然後在警報頁面中再次顯示好友請求 – Techy

0

如果你想同時提取待處理的朋友請求和消息,則可能需要考慮添加更通用的「通知」樣式表,或將它們作爲單獨的查詢運行。

所以,你可以走了表的線沿線的:

sk_notifications => [id, date, type, from_user, to_user, status] 

,其中將包括兩種類型的事件(新郵件和新的朋友請求) - 你的代碼將被負責提供不同的動作基於通知類型。

0

對朋友的要求見下文

select * from sk_friends where (logged_in_user_id in from_user_id or logged_in_user_id in to_user_id) and status='pending'; 

和消息未讀

select * from sk_messages where to_user_id=logged_in_user_id; 
相關問題