簡體   English   中英

來自多個表的MySQL查詢

[英]MySQL Query from multiple tables

我的數據庫中有3個MySQL表。 他們是:

  • 用戶 - 用戶名 ,名字,姓氏,電子郵件和密碼
  • 活動 -Activity_ID,用戶ID,日期,時間,活動
  • 關注 -Follow_ID,用戶ID, 關注 ID

我希望能夠生成一個輸出(到XML,但是我已經完成了),該輸出將為固定用戶遵循的用戶提供活動。

例如:用戶1跟隨用戶2,3和5,但不跟隨用戶4。 因此,對於該用戶,僅顯示來自用戶2,3和5的活動。但是對於跟隨用戶3和4的另一個用戶,僅顯示3和4。

對於SQL / MySQL,我還是個新手,所以我有點迷路。

查看使用聯接,這就是您要使用的聯接。 我還要重新評估您的表結構,我認為您的表結構中存在有缺陷的邏輯...

像這樣的例子(不正確,但可以給您一個想法):

select * from dbo.Users as usr
join dbo.follow as flw on usr.userId = flw.usrId
join dbo.Activity as act on act.UserId - flw.userID

這是數據庫的示例結構: 在此處輸入圖片說明

通過使用上述結構。

每當一個用戶關注另一個用戶時,就會將一條記錄添加到“ 關注”表中。 這是一對多的關系。 用戶*關注。

您現在可以查詢以下內容:

select followId from dbo.Follow as flw where flw.UserId = 123

這將返回對用戶關注的所有用戶的引用。

然后,您可以聯接UserFollow表以標識每個跟隨記錄的關系(基本上匹配用戶a>用戶b)。

我不知道這是否有意義。 沒有...就很難解釋...這有意義嗎?

暫無
暫無

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

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