在Facebook query language(FQL)
中,您可以指定IN
子句,例如:
SELECT uid1, uid2 FROM friend WHERE uid1 IN (1000, 1001, 1002)
有谁知道您可以传递到IN
的最大参数数量是什么?
答案 0 :(得分:3)
我认为最大结果集大小为5000
答案 1 :(得分:2)
它可能看起来像一个奇数(所以也许我想念,但它很接近〜1),但我似乎无法查询超过73 IN
个项目。这是我的问题:
SELECT object_id, metric, value
FROM insights
WHERE object_id IN ( ~73 PAGE IDS HERE~ )
AND metric='page_fans'
AND end_time=end_time_date('2011-06-04')
AND period=period('lifetime')
这是使用JavaSCript FB.api()
调用。
答案 2 :(得分:0)
不确定是否存在未记录的限制,或者可能是facebook fql server timeout的问题。
您应该检查FB Web服务器是否返回了错误500,这可能表示您传递了太长的GET语句(请参阅Facebook query language - long query)
我意识到我的获取太长了所以不是在IN语句中放入很多数字,我在那里放了一个从FB FQL中获取这些数字的子查询 - 但遗憾的是它看起来像FB无法处理查询并返回JSON中的“未知错误”实际上无法帮助我们理解问题。
答案 3 :(得分:-2)
据我所知,在SQL IN中没有最大数量的参数 http://www.sql-tutorial.net/SQL-IN.asp
只是不要使用更多的参数而不是你要检查的函数的值,因为你不会得到任何结果(不知道它是否会给出我从未尝试过的错误)。