いくつかのプロパティを持つタイプxのノードがあります。 私は、与えられたプロパティのセットがxに存在するかどうかをチェックするクエリーを作成しようとしています。そうした場合は、それぞれを値と比較し、関連ノードを返します。複数のプロパティの値がNeo4jに存在するかどうかを調べる
MATCH (x) WHERE exists(x.a) and ('high' IN (x.a)) and exists(x.b) and ('high' IN (x.b)) RETURN x
と: - - :私が試してみました
match(x)
if exist(x.a, x.b)
then if(x.a==1 and x.b==2)
return x
else if exist(x.a)
then if(x.a==1)
return x
else if exist(x.b)
then if(x.b==1)
return x
- :
match(x) where x.a='high' and x.b='high' return x
をしかし、これらのクエリの両方の問題は、もしということである擬似コードは、このようなものになるだろう'a'はxのプロパティではなく、 'b'は、少なくとも 'b'の値に基づいて結果を与えることなくnullを返します。私はそれがとの句のためだと仮定していますが、私は代替を見つけることができません。私はのNeo4j 3.1.3
UNIONを使用して3つの異なるケースをリンクすることもできます。 –