場景:多對多關係。在MySQL/PHP中查找和存儲數據庫關係
表有2列:用戶名和UserChoiche
我存儲用戶的喜好逐一每排。 (這是最有效的方法是什麼?)
例子:
UserID UserChoiche
mark
anna
mark
paul
mark
john
john
mark
在這個例子中選擇了標記3個用戶,和John選擇了1個用戶。
約翰和馬克選擇了彼此,我需要PHP來找到這個數據庫關係。
// PHP的MySQL查詢,其選擇一個指定的用戶的所有choiches(在這種情況下標記)
SELECT UserChoiche from exampletable WHERE UserID mark
//找到匹配
??
這裏是我的問題:我正在尋找最簡單和最有效的方式來處理這個問題!
也許這樣嗎? (它可以工作,但我不能寫一個MySQL聲明,對我來說太複雜!)
If Userchoice of previous query (in this case it would return anna paul and john) EQUALS any Userid in the table (in this case john) AND that Userid has a Userchoiche with the value of the UserID from the previous query (in this example 4th row)
然後我們有一個匹配
//如果找到匹配,然後採取用戶名和UserChoiche並將它們存儲到變量,我會用它來進行一些通知(可以有很多比賽,所以也許使用數組?)
這聽起來像你正在尋找一個自我加入。看看這個問題:http://stackoverflow.com/questions/1284441/how-does-a-mysql-self-join-work – 2012-02-20 22:23:15