[英]Get profile picture creation date from user table in FQL
如何使用FQL multi-query
獲取我的朋友個人資料圖片創建日期?
我寫下面的查詢:
SELECT src_small, src_big, src FROM photo WHERE src IN
(SELECT pic_square, pic_small, pic_big, pic FROM user WHERE uid IN
(SELECT uid2 FROM friend WHERE uid1 = me()) )
但它說:
{
"error": {
"message": "Your statement is not indexable. The WHERE clause must contain an indexable column. Such columns are marked with * in the tables linked from http://developers.facebook.com/docs/reference/fql ",
"type": "NoIndexFunctionException",
"code": 604
}
}
提前致謝。
來自Arjuna Del Toso的評論:
只有在標記為“可索引”的情況下,才能在WHERE子句中使用該列
不,那不完全正確。
在where子句中至少需要一個可索引列 - 一旦有了這個列,就可以使用其他非索引列來進一步限制結果。
由於用戶當前的個人資料圖片始終是他們的個人資料圖片相冊的專輯封面照片 ,我們可以使用它來獲取我們朋友的個人資料圖片的object_id
,並使用它來從photo
表中選擇我們想要的信息:
SELECT owner, src_small, created FROM photo WHERE object_id IN (
SELECT cover_object_id FROM album WHERE owner IN (
SELECT uid1 FROM friend WHERE uid2 = me()
) AND name = 'Profile Pictures'
)
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.