Rumah > pembangunan bahagian belakang > tutorial php > Ringkaskan operasi asas ElasticSearch! Sangat terperinci!

Ringkaskan operasi asas ElasticSearch! Sangat terperinci!

藏色散人
Lepaskan: 2023-04-11 09:04:02
ke hadapan
6396 orang telah melayarinya

es alamat muat turun
IK word segmenter alamat muat turun

Indeks

  • Buat indeks
    Berbanding dengan pangkalan data hubungan, mencipta indeks adalah bersamaan dengan mencipta pangkalan data
      PUT请求
      http://127.0.0.1:9200/shopping
    Salin selepas log masuk
  • Mempertanyakan indeks
      GET请求
      http://127.0.0.1:9200/shopping
    Salin selepas log masuk
  • Mempertanyakan semua indeks
      GET请求
      http://127.0.0.1:9200/_cat/indices?v
    Salin selepas log masuk
  • Memadamkan indeks
      DELETE请求
      http://127.0.0.1:9200/shopping
    Salin selepas log masuk

Dokumen

Indeks telah dibuat Seterusnya, kami mencipta dokumen dan menambah data. Dokumen di sini boleh dibandingkan dengan data jadual dalam pangkalan data hubungan Format data yang ditambahkan ialah format JSON

  • Buat dokumen

      POST请求
      http://127.0.0.1:9200/shopping/_doc #写法一
      http://127.0.0.1:9200/shopping/_create # 写法二  {"name":"商品"}
    Salin selepas log masuk
      PUT请求,主键必须幂等性
      http://127.0.0.1:9200/shopping/_doc/1001 #写法一
      http://127.0.0.1:9200/shopping/_create/1002 # 写法二  {"name":"商品"}
    Salin selepas log masuk
      POST请求 ,创建自定义id
      http://127.0.0.1:9200/shopping/_doc/1001
    Salin selepas log masuk
  • Pertanyaan kunci utama

      GET请求
      http://127.0.0.1:9200/shopping/_doc/1001
    Salin selepas log masuk
  • Pertanyaan penuh

      GET请求
      http://127.0.0.1:9200/shopping/_search
    Salin selepas log masuk
  • Pengubahsuaian penuh

      PUT请求
      http://127.0.0.1:9200/shopping/_doc/1001
      {"name":"商品"}
    Salin selepas log masuk
  • Pengubahsuaian separa

      POST请求
      http://127.0.0.1:9200/shopping/_update/1001
      {"doc":{"name":"局部修改商品"}}
    Salin selepas log masuk
  • Padam

      DELETE请求
      http://127.0.0.1:9200/shopping/_doc/1001
    Salin selepas log masuk

    Pertanyaan

  • Pertanyaan bersyarat

      GET请求,方法一
      http://127.0.0.1:9200/shopping/_search?q=category:小米
      http://127.0.0.1:9200/shopping/_search?q=name:商品
    Salin selepas log masuk
      GET请求,方法二(推荐)
      http://127.0.0.1:9200/shopping/_search  {
          "query":{
              "match":{
                  "category":"小米"
              }
          }
      }
    Salin selepas log masuk
  • Pertanyaan penuh

      GET请求
      http://127.0.0.1:9200/shopping/_search  {
          "query":{
              "match_all":{
              }
          }
      }
    Salin selepas log masuk
  • Pertanyaan halaman (daripada, saiz)

      GET请求
      http://127.0.0.1:9200/shopping/_search  {
          "query":{
              "match_all":{
              }
          },
          "from":0,#起始位置/偏移量 ,公式:(页码-1)* 每页数据条数      "size":10,#每页查询10条  }
    Salin selepas log masuk
  • Nyatakan pertanyaan paging medan (_source)

      GET请求
      http://127.0.0.1:9200/shopping/_search  {
          "query":{
              "match_all":{
              }
          },
          "from":0,#起始位置/偏移量 ,公式:(页码-1)* 每页数据条数      "size":10,#每页查询10条      "_source":["title"]
      }
    Salin selepas log masuk

    Isih pertanyaan (isih)

      GET请求
      http://127.0.0.1:9200/shopping/_search  {
          "query":{
              "match_all":{
              }
          },
          "from":0,#起始位置/偏移量 ,公式:(页码-1)* 每页数据条数      "size":10,#每页查询10条      "_source":["title"],
          "sort":{
              "price":{
                  "order":"desc"
              }
          }
      }
    Salin selepas log masuk

    Pertanyaan berbilang keadaan

  • dan pertanyaan (mesti)

      GET请求
      http://127.0.0.1:9200/shopping/_search  {
          "query":{
              "bool":{
                  "must":[ 
                      {
                          "match":{
                              "category":"小米"
                          }
                      },
                      {
                          "match":{
                              "price":1999.00
                          }
                      }
                  ]
              }
          }
      }
    Salin selepas log masuk
  • atau pertanyaan (sepatutnya)

      GET请求
      http://127.0.0.1:9200/shopping/_search  {
          "query":{
              "bool":{
                  "should":[ 
                      {
                          "match":{
                              "category":"小米"
                          }
                      },
                      {
                          "match":{
                              "price":1999.00
                          }
                      }
                  ]
              }
          }
      }
    Salin selepas log masuk
  • julat pertanyaan ( penapis, julat)

      GET请求
      http://127.0.0.1:9200/shopping/_search  {
          "query":{
              "bool":{
                  "should":[
                      {
                          "match":{
                              "category":"小米"
                          }
                      },
                      {
                          "match":{
                              "price":1999.00
                          }
                      }
                  ],
                  "filter":{
                      "range":{
                          "price":{
                              "gt":5000
                          }
                      }
                  }
              }
          }
      }
    Salin selepas log masuk
  • Padanan carian teks penuh (pembahagian perkataan) (padanan)

      GET请求
      http://127.0.0.1:9200/shopping/_search  {
          "query":{
              "match":{
                  "category": "小华"
              }
          }
      }
    Salin selepas log masuk
  • Padanan tepat ( padanan_frasa)

      GET请求
      http://127.0.0.1:9200/shopping/_search  {
          "query":{
              "match_phrase":{
                  "category": "小华"
              }
          }
      }
    Salin selepas log masuk
  • Sorotan pertanyaan (serlahkan, tambahkan teg html pada hasil carian)

      GET请求
      http://127.0.0.1:9200/shopping/_search  {
          "query":{
              "match_phrase":{
                  "category": "小华"
              }
          },
          "hightlight":{
              "fields":{
                  "category":{}
              }
          }
      }
    Salin selepas log masuk

    Pertanyaan pengagregatan

  • Pulangan data statistik dan data mentah

      GET请求
      http://127.0.0.1:9200/shopping/_search  { 
          "aggs":{ #聚合操作          "price_group":{ #名称,随意起名              "terms":{ #分组                  "field":"price" #分组字段              }
              }
          },  }
    Salin selepas log masuk
  • Tutup data mentah (saiz)

      GET请求
      http://127.0.0.1:9200/shopping/_search      { 
          "aggs":{ #聚合操作          "price_group":{ #名称,随意起名              "terms":{ #分组                  "field":"price" #分组字段              }
              }
          },      "size":0
      }
    Salin selepas log masuk
  • Purata

      GET请求
      http://127.0.0.1:9200/shopping/_search      { 
          "aggs":{ #聚合操作          "price_avg":{ #名称,随意起名              "age":{ #平均值                  "field":"price" #分组字段              }
              }
          },      "size":0
      }
    Salin selepas log masuk

    Perhubungan pemetaan

  • Buat pemetaan

      PUT请求
      http://127.0.0.1:9200/user/_mapping  { 
          "properties":{
              "name":{
                  "type":"text", #全文检索分词查询              "index":true
              },
              "sex":{
                  "type":"keyword",#完全查询              "index":true
              },
              "tel":{
                  "type":"keyword",#不能查询              "index":false
              }
          }
      }
    Salin selepas log masuk
  • Pemetaan pertanyaan

      GET请求
      http://127.0.0.1:9200/user/_mapping
    Salin selepas log masuk
  • Tambah Data

      PUT请求
      http://127.0.0.1:9200/user/_create/1001
      {
          name:"小米",
          sex:"男的",
          tel:"10010"
      }
    Salin selepas log masuk
  • Data pertanyaan

      GET请求
      http://127.0.0.1:9200/user/_search  {
          "query":{
              "match": {
                  name:"小"
              }
          }
      }
    Salin selepas log masuk
      GET请求
      http://127.0.0.1:9200/user/_search  {
          "query":{
              "match": {
                  sex:"男" #查询不到,必须输入男的          }
          }
      }
    Salin selepas log masuk
      #不支持查询  GET请求
      http://127.0.0.1:9200/user/_search  {
          "query":{
              "match": {
                  tel:"10010" 
              }
          }
      }
    Salin selepas log masuk

Atas ialah kandungan terperinci Ringkaskan operasi asas ElasticSearch! Sangat terperinci!. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Label berkaitan:
sumber:learnku.com
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan