ElasticSearch"เอ"หรือ"ที่ว่างเปล่า"

0

คำถาม

ฉันมีความดัชนีดัชนี

{
  "docs": {
    "mappings": {
      "text": {
        "properties": {
          "name": {
            "type": "text",
            "fields": {
              "keyword": {
                "type": "keyword",
                "ignore_above": 256
              }
            }
          }
          "code": {
            "type": "text",
            "fields": {
              "keyword": {
                "type": "keyword",
                "ignore_above": 256
              }
            }
          }
        }
      }
    }
  }
}

"รหัส"สามารถมีค่า:["a"],["b"],["เอ","b"]หรือ[]

ฉันต้องการสืบค้นที่จะช่วยสงเคราะห์มันหน่อยดิ๊กค่ากับรหัส:"เอ"หรือ[]. ใครก็ได้ช่วยเรื่องนี้กับการค้นหานี่คือสิ่งที่ฉันต้องพยายามตอนนี้ยัง/จากความสำเร็จ(ส่วนนี้ดูเหมือนว่าจะพูดว่า"a"กับ"[]";ฉันอยากให้"เอ"หรือ"[]").

"bool": {
  "should": [
    {
      "match": {
        "code": "a"
      }
    }
  ],
  "must_not": [
    {
      "exists": {
        "field": "code"
      }
    }
  ]
}
  
elasticsearch elasticsearch-dsl
2021-11-18 20:21:18
1

คำตอบที่ดีที่สุด

0

หรือจะเป็นประสบความสำเร็จกับ bool/shouldแต่ bool/must constraint ต้องเป็นข้างใน bool/should.

คุณควรลองกับเรื่องนี้กับการค้นหา:

{
  "query": {
    "bool": {
      "minimum_should_match": 1,
      "should": [
        {
          "match": {
            "code": "a"
          }
        },
        {
          "bool": {
            "must_not": [
              {
                "exists": {
                  "field": "code"
                }
              }
            ]
          }
        }
      ]
    }
  }
}
2021-11-18 21:25:31

ขอบคุณมันทำงาน! อ่าฉันใกล้เคียงยังไม่ถึงกับของฉันดั้งเดิม query
Test1 Test2

เจ๋งดีใจที่มันได้ผลออกไป!!
Val

ในภาษาอื่นๆ

หน้านี้อยู่ในภาษาอื่นๆ

Русский
..................................................................................................................
Italiano
..................................................................................................................
Polski
..................................................................................................................
Română
..................................................................................................................
한국어
..................................................................................................................
हिन्दी
..................................................................................................................
Français
..................................................................................................................
Türk
..................................................................................................................
Česk
..................................................................................................................
Português
..................................................................................................................
中文
..................................................................................................................
Español
..................................................................................................................
Slovenský
..................................................................................................................

ดังอยู่ในนี้หมวดหมู่

ดังคำถามอยู่ในนี้หมวดหมู่