2013-05-04 25 views
0

我想創建一個查詢來查找我的哪些朋友有帖子讓我在帖子上顯示它。這是我的:1.一張桌子,我救了我的朋友2.一張桌子,我救了我的帖子。例如:SQL查詢來檢查我的哪些朋友表有一個帖子爲我

TABLE FRIENDS 

ID USER FRIEND 
1  me  chris 
2  me  george 
3  me  john 

TABLE POSTS 

ID MESSAGE USER  DATETIME 
1 lala  john  2013-15-03 17:27:01 
2 lala  george 2013-15-02 17:02:01 
3 lala1  george 2013-16-03 13:28:01 
4 lala1  john  2013-21-05 19:27:01 
5 lala2  john  2013-30-08 17:27:01 

等... 我在這個表中超過200行

因此飼料應如下結果:

5 lala2  john  2013-30-08 17:27:01 
4 lala1  john  2013-21-05 19:27:01 
3 lala1  george 2013-16-03 13:28:01 
1 lala  john  2013-15-03 17:27:01 
2 lala  george 2013-15-02 17:02:01 

查詢應該是什麼樣子?

任何幫助表示讚賞。謝謝。

+0

每個用戶在數據庫中都有自己的表嗎? – Ejaz 2013-05-04 01:06:37

+0

每個用戶在數據庫中都沒有自己的表格 – stefanosn 2013-05-04 01:07:40

+0

我認爲標題有點模糊 – Ejaz 2013-05-04 01:09:06

回答

0

其實這是錯誤的設計,需要用每個用戶ID和一個只包含ID的朋友表用戶表,但在這種情況下,這是你可以做什麼:

首先,添加一個外鍵職位表,

這樣你就可以知道哪些信息是誰,所以它看起來像這樣:

TABLE POSTS 

ID MESSAGE USER  TO  DATETIME 
1 lala  john  me 2013-15-03 17:27:01 
2 lala  george me 2013-15-02 17:02:01 
3 lala1  george me 2013-16-03 13:28:01 
4 lala1  john  me 2013-21-05 19:27:01 
5 lala2  john  me 2013-30-08 17:27:01 

那麼查詢將是:

select * from friends f join posts p on f.user=p.to 
相關問題