Điều này là do ngôn ngữ truy vấn và cách nó phân tích cú pháp các đối tượng, đối tượng bạn đang cố gắng sử dụng có dạng như sau:
{ key: { query1, query2 }}
Ở đâu query1
là $geoIntersects
và query2
$not
vốn không phải là một cấu trúc hợp lệ, những gì bạn có thể làm là bao bọc cả hai bằng $ và
truy vấn như vậy:
{
$and: [
{
"footprint": {
"$geoIntersects": {
"$geometry": {
"type": "Polygon",
"coordinates": [
[
[
41.62109375000001,
38.087716380862716
],
[
41.870727539062514,
37.998201197578084
],
[
41.72393798828124,
38.01268326428104
],
[
41.62109375000001,
38.087716380862716
]
]
]
}
}
}
},
{
footprint: {
"$not": {
"$geoWithin": {
"$geometry": {
"type": "Polygon",
"coordinates": [
[
[
41.62109375000001,
38.087716380862716
],
[
41.870727539062514,
37.998201197578084
],
[
41.72393798828124,
38.01268326428104
],
[
41.62109375000001,
38.087716380862716
]
]
]
}
}
}
}
}
]
}