Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/cplusplus/152.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何在couchbase的对象中添加索引和查询数组?_Couchbase_N1ql - Fatal编程技术网

如何在couchbase的对象中添加索引和查询数组?

如何在couchbase的对象中添加索引和查询数组?,couchbase,n1ql,Couchbase,N1ql,具有与此结构类似的多个文档: { 'key1':value, 'key2':value2, 'galaxy':{ 'planets':['earth','mars','welcomebackpluto'] 'sun': 'something' } } 我想查询galaxy对象中planets数组中包含mars的所有文档 我创建的索引不起作用,我无法查询它们,知道如何使用数组索引吗 CREATE INDEX ix1 ON defau

具有与此结构类似的多个文档:

{
'key1':value,
'key2':value2,
'galaxy':{
           'planets':['earth','mars','welcomebackpluto']
           'sun': 'something'
          }
}
我想查询
galaxy
对象中
planets
数组中包含
mars
的所有文档

我创建的索引不起作用,我无法查询它们,知道如何使用数组索引吗

CREATE INDEX ix1 ON default (DISTINCT ARRAY (DISTINCT ARRAY p FOR p IN g.planets END) FOR g IN galaxy END) WHERE type = "xyz";

SELECT d.*
FROM default AS d
WHERE d.type = "xyz" AND ANY g IN d.galaxy SATISFIES (ANY p IN g.planets SATISFIES p = "mars" END) END;