2011-09-17 83 views
0

如何選擇每個朋友的2張個人資料照片?Facebook FQL選擇每個朋友的2張照片

我有這個疑問:

SELECT object_id, src_small 
FROM photo WHERE aid 
IN (SELECT aid FROM album WHERE owner 
IN (SELECT uid2 FROM friend WHERE uid1 = me()) AND type="profile") 

顯示的每一個朋友每資料圖片。不知怎的,我應該限制爲每個用戶只選擇2個。

任何想法?

回答

0

您可以在特定查詢以及ORDER BY末尾使用LIMIT語句。

所以,你可以通過添加

ORDER BY created DESC LIMIT 2 

所以,從每一位朋友送2得到他們的2張最新的照片,你必須運行另一個子查詢,從每一位朋友取2:

SELECT object_id, src_small 
    FROM photo WHERE pid 
     IN (SELECT pid FROM photo WHERE aid 
     IN (SELECT aid FROM album WHERE owner 
     IN (SELECT uid2 FROM friend WHERE uid1 = me()) AND type="profile") ORDER BY created DESC LIMIT 2) 
+0

如果你添加「限制2」,你只能從查詢中得到2行,而不是來自每個朋友的2行 – Hese

+0

是的你是對的,我會修復我的答案來解釋這個。我還沒有測試它,所以讓我知道它是否工作 –

+0

無法正常工作=/ – Hese