簡體   English   中英

從FQL中的用戶表中獲取個人資料圖片創建日期

[英]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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM