1

它在FQL 用户文档中说有 4 个可索引字段(标有 *):

  • 姓名
  • 第三方ID
  • uid
  • 用户名

但是当我执行这样的查询时:

SELECT uid
FROM user 
WHERE name = "Mark Zuckerberg"

我收到一个错误:

{
  "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
  }
}

我在这里想念什么?这是一个错误吗?如何按名称过滤用户表上的 FQL 查询?

4

1 回答 1

3

等待 FB 对此错误的回应,但同时有一个解决方法。

可索引的列名在profile表中起作用,可以返回它的id字段,对应user表中的uid列,例如

SELECT first_name FROM user WHERE uid IN (SELECT id FROM profile WHERE name="Mark Zuckerberg")
于 2013-01-16T15:19:21.243 回答