2014-01-28 39 views
-1

我想創建一個可以相互喜歡的用戶數據庫。當用戶(例如用戶1)喜歡用戶2時,應該存儲它。如果用戶2隨後喜歡用戶1,那麼他們都應該被告知。我無法弄清楚如何爲此構造SQL表。我想要實現這一點的方法是爲每個喜歡用戶的用戶創建一個喜歡的數組。因此,如果用戶1喜歡用戶2,3,4和5,那麼這個用戶1就像陣列一樣存儲在用戶1中。如果用戶1然後被用戶2喜歡,那麼用戶1像陣列將檢查用戶2.匹配相互喜歡的用戶 - 如何存儲此信息

據我所知,數組在SQL中不可用,那麼最簡單的替代方案是什麼?

+0

是不是簡化它說你只是想與你的用戶建立一個多對多? – Dan

+0

@Dan no,這正是他想要做的 – Ghost

回答

1

創建一個「連接表」:

CREATE TABLE user_loves_user (
    user_id1 int NOT NULL, 
    user_id2 int NOT NULL 
); 

ALTER TABLE user_loves_user ADD PRIMARY KEY (user_id1, user_id2) ; 

有了您的user表,它足以做你想要什麼。

相關問題