【问题标题】:Cypher: Query to Combine Collection for InFeed Ads (Show 1 Ad Every X Amount of Posts)?Cypher:查询以合并 InFeed 广告的集合(每 X 个帖子显示 1 个广告)?
【发布时间】:2014-06-20 16:01:39
【问题描述】:

我正在尝试构建一个允许我构建信息流广告的 Cypher 查询:

例如,在 Facebook 移动应用上,每 X 条帖子就会在 Feed 中显示一个广告(假设在同一 Feed 上每 5 个帖子就有 1 个广告)。

到目前为止,我有这个:“MATCH (P:Post) (A:Ad) return P,A”

帖子将是用户的帖子。 广告将是放置在用户供稿中的广告。

我能够同时获得这两个集合,但我不知道如何将它们结合起来以创建类似于 Feed 内应用的效果。

【问题讨论】:

  • 快速阅读后,我想 SKIP 和/或 FOREACH 会有所帮助。

标签: neo4j cypher


【解决方案1】:

您的实际用例是什么?

您是否在某处有广告提要并希望将其与用户的帖子合并?

您如何为广告提要和后提要建模?

您可能还有广告发布商、类别等?帖子也一样?

所以是这样的:

MATCH (u:User {login:"john"})-[:POSTED]->(p:Post)
WITH p
LIMIT 20
MATCH (:Publisher {id:"3829472"})-[:PUBLISHED]->(ad:Ad)<-[:AD_CATEGORY]-(c)-[:POST_CATEGORY]->(p)
RETURN p,case when random() < 0.2 then ad else null end

您可能应该研究图形建模。

对于实际的密码问题,请查看manualrefcard

【讨论】:

    猜你喜欢
    • 2011-10-09
    • 1970-01-01
    • 2018-02-18
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2010-10-27
    • 1970-01-01
    相关资源
    最近更新 更多