我有一些看起来与此相似的文件
{
"id": "XX",
"_id": "XX",
"artno": "0107727021",
"vendor": "XX",
"updatedAt": "2019-06-24T20:25:49.602Z",
"locales": [
{
"title": "Bademantel aus Leinen",
"description": "PREMIUM QUALITÄT. Bademantel aus gewaschenem Leinen mit zwei Vordertaschen und einem Bindegürtel in der Taille. Unisex. Durch Trocknen im Wäschetrockner bleibt die Weichheit des Leinens erhalten.",
"categories": [
"Damen",
"Nachtwäsche",
"Nachthemden & Morgenmäntel",
"Bademantel"
],
"brand": "XX",
"country": "DE",
"currency": "EUR",
"language": "de",
"variants": [
{
"artno": "0107727021002",
"price": 39.99,
"stock": 1,
"attributes": {
"size": "S/M",
"color": "Grau"
}
},
{
"artno": "0107727021004",
"price": 39.99,
"stock": 0,
"attributes": {
"size": "L/XL",
"color": "Grau"
}
}
]
},
{
"title": "Morgonrock i tvättat linne",
"description": "PREMIUM QUALITY. En morgonrock i tvättat linne. Morgonrocken har två framfickor och knytskärp i midjan. Unisex. Torktumla gärna för att behålla mjukheten i linnet.",
"categories": [
"Dam",
"Sovplagg",
"Nattlinnen & Morgonrockar",
"Morgonrock"
],
"brand": "XX",
"country": "SE",
"currency": "SEK",
"language": "sv",
"variants": [
{
"artno": "0107727021002",
"price": 399,
"stock": 1,
"attributes": {
"size": "S/M",
"color": "Grå"
}
},
{
"artno": "0107727021004",
"price": 399,
"stock": 0,
"attributes": {
"size": "L/XL",
"color": "Grå"
}
}
]
}
]
}
我想查询并获取所有文档,但仅使用数组中我要过滤的国家/地区中的数据。
例如country ='DE',那么我希望文档仅包含数组的那部分而不是所有国家的信息
我尝试了以下查询,但它告诉我我不能使用select *
SELECT * FROM c join l in c.locales where l.country = 'DE'
那我该怎么做才能使它起作用?
答案 0 :(得分:0)
该错误表明'SELECT *' is only valid with a single input set.
您的SQL使用JOIN
,因此请定义要查询的特定列:
SELECT c.XX,c.YY,l.ZZ FROM c
join l in c.locales
where l.country = 'DE'
或直接使用c
:
SELECT c FROM c
join l in c.locales
where l.country = 'DE'
请按照以下步骤调整您的SQL:
SELECT l FROM c
join l in c.locales
where l.country = 'DE'
输出:
[
{
"l": {
"title": "Bademantel aus Leinen",
"description": "PREMIUM QUALITÄT. Bademantel aus gewaschenem Leinen mit zwei Vordertaschen und einem Bindegürtel in der Taille. Unisex. Durch Trocknen im Wäschetrockner bleibt die Weichheit des Leinens erhalten.",
"categories": [
"Damen",
"Nachtwäsche",
"Nachthemden & Morgenmäntel",
"Bademantel"
],
"brand": "XX",
"country": "DE",
"currency": "EUR",
"language": "de",
"variants": [
{
"artno": "0107727021002",
"price": 39.99,
"stock": 1,
"attributes": {
"size": "S/M",
"color": "Grau"
}
},
{
"artno": "0107727021004",
"price": 39.99,
"stock": 0,
"attributes": {
"size": "L/XL",
"color": "Grau"
}
}
]
}
}
]