Facebook FQL 选择每个朋友的 2 张照片

发布于 2024-12-05 03:12:24 字数 289 浏览 0 评论 0原文

如何选择每个朋友的 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 个。

有什么想法吗?

How can I select 2 profile pictures of every friends?

I have this query:

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")

That displays every profile picture of every friends. Somehow I should limit to select only 2 per user.

Any ideas?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

回首观望 2024-12-12 03:12:24

您可以在特定查询的末尾使用 LIMIT 语句以及 ORDER BY。

因此,您可以通过添加来获取他们的 2 张最新照片。

ORDER BY created DESC LIMIT 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)

You can use the LIMIT statement at the end of a particular query as well as ORDER BY.

So you can get their 2 latest photos by adding

ORDER BY created DESC LIMIT 2

So to get 2 from EVERY friend, you'll have to run another subquery to fetch 2 from every friend:

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)
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文