在像應用一個Twitter,我想獲得僅最後3個USERS具有PUBLISH特定HASHTAG鳴叫(A,B,C,d,E)如何在不限制全局查詢的情況下獲取COLLECT的第一個元素?
START me=node(X), hashtag=node(A,B,C,D,E)
MATCH n-[USED_IN]->tweet<-[p:PUBLISH]-user-[FRIEND_OF]->me
WITH p.date? AS date,hashtag,user ORDER BY date DESC
WITH hashtag, COLLECT(user.name) AS users
RETURN hashtag._id, users;
這是結果我得到與此查詢。這很好,但如果朋友列表很大,我可以在第二列中有一個非常大的數組。
+-------------------------------------------+
| hashtag | users |
+-------------------------------------------+
| "paradis" | ["Alexandre","Paul"] |
| "hello" | ["Paul"] |
| "public" | ["Alexandre"] |
+-------------------------------------------+
如果我添加一個LIMIT子句,在查詢結束時,整個結果集是有限的。
因爲用戶可以有非常多的朋友,我不想拿回所有這些用戶,但只有最後2或3已發表在這些主題標籤
是帶有過濾器的任何解決方案/減少得到我的期望?
運行的Neo4j 1.8.2
這工作完全!!聽起來像magick - 謝謝! –