2012-05-23 34 views
0

好吧,所以我查詢了兩個FQL表:Events和event_members。在一個查詢中,我從用戶和他的朋友那裏獲得所有事件(讓我們稱之爲$ events),然後在另一個查詢中讓所有成員參加所有這些事件(讓我們稱之爲$ attending members)。 這兩個查詢都是以php的數組形式返回的,因爲您可能已經知道FQL不允許INNER JOINS。如何在Facebook上進行內部連接FQL

我想要做的是「規範化」數據,以便我加入這兩個結果,並獲得一個包含所有事件詳細信息和參與該事件的人數的單個數組。兩個陣列共享一個通用的KEY:eid。

在sql上它會很容易...內部JOIN。但在FQL上沒有內部連接,所以我認爲我應該執行連接'php-side',其中array_intersect類似,但我無法找到實現它的方式。

幫助真的很感激!

回答

0

內部連接不會給你參加的人數。計數會。此外,這不是「正常化」數據,將其想象爲混淆。

要在編程語言(如PHP)中執行此操作,只需遍歷數組並在每次找到元素時遞增計數器。

+0

是的,我知道我必須計算event_members中的成員數量才能獲得參加金額。我認爲最好使用count函數而不是遍歷數組。 但之後我需要加入數據,以便我只能得到1個數組,將事件的細節和來自第二個數組的計數信息相結合。 –