假设我们有节点具有数组属性。
节点1 水果= ['苹果'芒果']
节点2 水果= ['苹果']
节点3 水果= ['番茄']
我们希望找到所有节点,其中一个水果存在于Maria的篮子里。
Maria的篮子= [' orange',' grape'' apple']
所以我们的最终结果将是:节点1和节点2.
我的方法是匹配其水果阵列元素存在的所有节点与Maria的篮子。但我无法让它工作
匹配(n)其中x在[' orange',' grape',' apple']中的n.fruits返回n
我尝试了上面的查询并返回语法错误,因为未定义x。我们如何正确处理这个问题?
我想到的第二种方法是,如果节点的成果与Maria的成果之间存在UNION,则匹配所有节点。
答案 0 :(得分:1)
如果您想找到一个水果匹配的节点:
Private Sub Worksheet_Change(ByVal Target As Range)
If Not Intersect(Target, Range("M9")) Is Nothing Then
Application.EnableEvents = False
Application.ScreenUpdating = False
Call Macro5
Application.EnableEvents = True
Application.ScreenUpdating = True
End If
If Not Intersect(Target, Range("I88")) Is Nothing Then
Application.EnableEvents = False
Application.ScreenUpdating = False
Call Macro6
Application.EnableEvents = True
Application.ScreenUpdating = True
End If
End Sub
如果要查找> = 1个水果匹配的节点:
MATCH (n)
WHERE single(x IN n.fruits WHERE x IN ['orange', 'grape', 'apple'])
RETURN n;
根据你的措辞,我不确定你想要哪一个。