簡體   English   中英

從多個表中選擇結果

[英]Select results from multiple tables

我正在創建一個社交網站。我有一個警報選項,需要根據其到達各個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]
SELECT * FROM sk_friends JOIN sk_message ON sk_friends.from_user_id = sk_message.from_user_id

這將是從兩個表中檢索記錄的基本查詢。

試試這個..但是不確定有什么對您有幫助

如果您嘗試同時提取待處理的好友請求和消息,則可能要考慮添加更通用的“通知”樣式表,或將其作為單獨的查詢運行。

因此,您可以按照以下方式去一張桌子:

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

其中將同時包含兩種類型的事件(新消息和新好友請求)-您的代碼將負責根據通知類型提供不同的操作。

對於朋友的請求,請參見下面的查詢

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;

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM