gpt4 book ai didi

node.js - 如何在 N1QL 和 Couchbase 中创建索引并使用 join

转载 作者:太空宇宙 更新时间:2023-11-03 22:41:13 24 4
gpt4 key购买 nike

我在相同的默认存​​储桶中有三个如下所示的json

如何加入这三个json?

第一个

"Country|1":{
"_id": 1,
"_type": "Country",
"currency": "Afghani",
"iso2": "AF",
"name": "Afghanistan"
}

第二个

"Company|a1091aa0-b548-11e6-957e-139be07f46df": 
{
"_id": "a1091aa0-b548-11e6-957e-139be07f46df",
"_type": "Company",
"companyTypes": [
1
],
"country": "Country|1",
}

第三

"Campaign|1001":{
"_id": 1001,
"_type": "Campaign",
"banners": [],
"carriers": [
"Telstra"
],
"country": 1,
"created": "2016-03-08T18:30:00.000Z",

}

这里key是“name|_id”,我在每个json之前都有它。

我有这种类型的所有json。我尝试通过引用此源 Couchbase N1QL join query 来加入如下查询

SELECT d1.*,d2.* FROM 
default d1 USE KEYS "Company|a1091aa0-b548-11e6-957e-139be07f46df"
JOIN default d2 ON KEYS d1.country;

我得到了想要的结果。

但是当我删除 USE KEYS "Company|a1091aa0-b548-11e6-957e-139be07f46df" 然后运行下面的查询时,我收到 INDEX 错误

SELECT d1.*,d2.*
FROM default d1
JOIN default d2 ON KEYS d1.country;

我还尝试创建如下索引

CREATE INDEX campaign_user_co ON `default` (TOSTRING(country)) 
where _type="Company"

即使我收到索引错误。

默认键空间上没有与您的查询匹配的可用索引。

最佳答案

尝试添加主索引。

CREATE PRIMARY INDEX ON default;

将您的 key 空间名称替换为默认

关于node.js - 如何在 N1QL 和 Couchbase 中创建索引并使用 join,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40910649/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com