2ノードを超えるすべてのラベルを取得するためのCypherクエリ

StackOverflow https://stackoverflow.com//questions/24059034

  •  26-12-2019
  •  | 
  •  

質問

各接続コンポーネントには、複数のノードを持つすべてのラベルを返すCypherクエリを作成したいと考えています。 私はこのようなすべてのラベルを手に入れます:

match (n) return labels(n)
.

だから私は必要なラベルだけを手に入れるためにこれをやろうとしました:

match (n) with labels(n) as lb where count(k:lb[0]) >= 2)  return lb limit 10
.

しかし、構文エラーを得ます:

無効な入力 ')':予想桁、 '。'、 'e'、空白、ノードラベル、 '['、 "=〜"、in、 '*'、 '/'、 '%'、 '^'、 '+'、 ' - '、 '<'、 '>'、 "<="、 "<="、">="、 '='、 "<>"、 "!="、XOR、または、ロードCSV、Start、Match、Wond、Merge、Merge、Merge、 作成、設定、削除、削除、foreach、return、union、 ';'または終了 入力(1行目、列57)

私はそのラベルを持つノードの数でラベルを注文したいと思う...

役に立ちましたか?

解決

2.1

match (n) 
unwind labels(n) as l
with l,count(*) as cnt
where cnt > 2
return l
.

他のヒント

あなたがNeo4jバージョン2.0でこれをしている場合は、この文字列クエリで欲しいものを達成できます。

    Start n=node(*)
    match (n)-->() with n,count(*) as rel_cnt where rel_cnt >= 2 return n;
.

このクエリはグラフ全体を横断するように注意してください、それはおそらくそれを特定のラベルに制限することをお勧めします。歓声。

更新

私は1つ以上の関係を持つノードとして質問を読みました、私の悪い。このクエリは、opが尋ねたのをしません。

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top