使用N1ql couchbase查询的多对多关系

使用N1ql couchbase查询的多对多关系,couchbase,n1ql,Couchbase,N1ql,用户桶数据结构 Docid : "user123456" { Name: utpal, Phone: 98222333, Age:30, addressids:["add_123","add_1234"] } 地址桶 Docid : add_123 { Name: behala, Location: kolkata } Docid : add_123 { Name: behala1, Location: kolkata1 } 我想要结果 [{ Name: utpal, Phone: 98

用户桶数据结构

Docid : "user123456"
{
Name: utpal,
Phone: 98222333,
Age:30,
addressids:["add_123","add_1234"]

}
地址桶

Docid : add_123
{
Name: behala,
Location: kolkata
}

Docid : add_123
{
Name: behala1,
Location: kolkata1
}
我想要结果

[{
Name: utpal,
Phone: 98222333,
Age:30,

addressids:["add_123","add_1234"],

address:[
{
Name: behala,
Location: kolkata
},
{
Name: behala1,
Location: kolkata1
}
]
任何人都可以帮助我如何为该结果编写N1ql查询

INSERT INTO default VALUES("user123456" { "Name": "utpal", "Phone": "98222333", "Age":30, "addressids":["add_123","add_1234"], "type":"user"});
INSERT INTO default VALUES("add_123", { "Name": "behala", "Location": "kolkata" });
INSERT INTO default VALUES("add_1234", { "Name": "behala4", "Location": "kolkata4" });


SELECT u.*, address
FROM default AS u
LET address = (SELECT RAW a FROM default AS a USE KEYS u.addressids)
WHERE u.type = "user";


谢谢你的回答,我想这对我有帮助。但我不明白用两种不同的钱是不可能的。用户bucket和地址bucket。选择u.*,用户地址作为u嵌套地址作为u.AddressID上的地址;
SELECT u.*, address
FROM default AS u
NEST default AS address ON u.addressids
WHERE u.type = "user";