1. 程式人生 > >es學習之高階查詢

es學習之高階查詢

mapping:es中會給每個文件的每個欄位一個數據型別,es會預設的幫我們完成這一步

但是若我們需要自己定義一個mapping,也就是一個對映關係,我們需要自己定義:

settings表示對該index的設定:該index有三個shard,每個shard有一個副本作為備份

query查詢:

term和terms不知道分詞器的存在,你所查詢的內容,es都會將他視作一個完整的欄位去查詢,適合關鍵子查詢

match查詢:

match查詢會去匹配你所查詢的內容在倒排索引中是否包含,若包含,就返回,跟term,terms不同

指定查詢某個欄位:

範圍查詢:使用range關鍵字 gt表示大於 ,gte表示大於等於

GET account/index/_search
{
  "query": {
    "range": {
      "age": {
        "gt": 21,
        "lt": 30
      }
    }
  }
}

bool查詢:must,shuld,must_not

match也可以是term,range等

GET account/index/_search
{
  "query": {
    "bool": {
      "must": [
        {
          "match": {
           "name": "lc"
          }
        }
      ]
    }
  }
}

fuzzy模糊查詢:

GET /account/index/_search
{
  "query": {
    "fuzzy": {
      "des": "boy"
    }
  }
}

自定義mapping:也就是定義type的型別

PUT /users
{
  "settings": {
    "number_of_shards": 5,
    "number_of_replicas": 1
  },
  "mappings": {
    "user":{
      "properties": {
        "name":{"type":"text"},
        "age":{"type": "integer"},
        "first_name":{"type": "text"},
        "second_name":{"type": "text"}
      }
    }
  }
}


下面的做法會給user新增一個mapping:

put users/user/1
{
  "name":"lc",
  "ppp":"pp"
}

相關推薦

es學習高階查詢

mapping:es中會給每個文件的每個欄位一個數據型別,es會預設的幫我們完成這一步 但是若我們需要自己定義一個mapping,也就是一個對映關係,我們需要自己定義: settings表示對該index的設定:該index有三個shard,每個shard有一個副本作

Elasticsearch學習多種查詢方式

完全 mar commerce 生產 pro 命令行 str 令行 {} 1. query string search   搜索全部商品:GET /ecommerce/product/_search   took:耗費了幾毫秒  timed_out:是否超時,這裏是沒有  

oracle學習基本查詢和條件過濾,分組函數使用

pic sub 排序 acl date 數值 模糊查詢 使用 char oracle是殷墟出土的甲骨文的第一個單詞,所以在中國叫做甲骨文,成立於1977年,總部位於美國加州。 在安裝好後,主要有兩個服務需要開啟: 1,實例服務,OracleServiceORCL,決定是否可

MySQL進階高階查詢,真的高階啊!

高階查詢 1.多表查詢(關聯查詢,連線查詢) 內連線 沒有主從表之分。 與連線順序無關 內連接出現在結果集中的資料必須出現在每一個關聯表中。 select * from em

66 Oracle資料庫SQL開發 高階查詢——使用線性迴歸函式

分享一下我老師大神的人工智慧教程!零基礎,通俗易懂!http://blog.csdn.net/jiangjunshow 也歡迎大家轉載本篇文章。分享知識,造福人民,實現我們中華民族偉大復興!        

演算法學習二分查詢演算法的python實現

  ——參考自《演算法圖解》   我們假設需要查詢的陣列是有序的(從大到小或者從小到大),如果無序,可以在第四行後插入一句 1 my_list.sort()   完整程式碼如下 1 def binary_search(my_list, item): 2 # low和high

MySQL 單表查詢高階查詢

一、聚合函式 聚合函式 函式名稱 作用 count() 返回某列的行數 sum() 返回某列值的和 avg() 返回某列的平均值 max() 返回某列的最大值 min() 返回某列的最小值 上面聚合函式的使用語法

MongoDB 學習高階操作(七)

高階操作 講解關於mongodb的高階操作,包括聚合、主從複製、分片、備份與恢復、MR 完成python與mongodb的互動 聚合 aggregate 聚合(aggregate)主要用於計算資料

mongodb進階一高階查詢

這篇我們來說說mongodb的進階--------------高階查詢 一:各種查詢 1:條件操作符 <, <=, >, >= 這個操作符就不用多解釋了,最常用也是最簡單的。 db.collection.find({ "field" : { $gt

PHP操作Mongodb高階查詢

在PHP操作Mongodb之增刪改查篇中我們介紹了PHP中Mongodb的增加、刪除、修改及查詢資料的操作。本文主要是將查詢時用到的高階知識跟大家分享下。 1、查詢時的排序 在關係型資料庫的查詢中,往往會用到排序。例如時間倒序,點選率升序啦等等。在Mongodb的查詢中,

MYSQL學習查詢(表連線查詢)以及許可權控制

在上一篇部落格裡我們詳細的介紹了MySQL語言的DDL(資料定義語言) 和 DML(資料操作語言),那麼在這篇部落格中我們要對上次的DML進行補充;同時我們要介紹DCL(資料控制語言); 子查詢 在學習子查詢的開始我們由這樣一個問題來引出; 我們現在有一張員工表emp,該表中包含

SQL程式設計高階查詢及注意事項

1.什麼是子查詢? 當一個查詢是另一個查詢的條件時,稱之為子查詢。子查 詢可以使用幾個簡單命令構造功能強大的複合命令。子查詢最常用於SELECT-SQL命令的 WHERE子句中。子查詢是一個 SELECT 語句,它巢狀在一個 SELECT、SELECT...INTO 語句、INSERT...INTO 語句、

ES學習分片路由

本文主要內容: 1、路由一個文件到一個分片 2、新建、索引和刪除請求 3、取回單個文件 4、區域性單個文件 5、多文件模式 6、理解一下ES深度分頁(from-size)的劣勢 路由一個文件到一個分片 當索引一個文件的時候,文件會被儲存到一個主分片中。 El

es學習分頁

es中的分頁是使用from,size來控制的,如下語句: GET account/index/_search {  "from": 0,"size": 1 } 從索引0開始,查詢一條資料。 es分頁原理: 若es存在三個shard,每個shard存在2000條資料

SQL高階查詢

如果遇到沒有建立的表影響執行使用 子查詢 子查詢是一條SELECT語句,但它是巢狀其他SQL語句中的 為的是給該SQL提供資料以支援其執行操作 檢視誰的工資高於CLARK? SELECT ename,sal FROM emp_

ES學習單個索引對映多個型別

在ES6.0.0及更高的版本中,建立的索引只能包含一個對映型別。在6.0.0以下的版本中建立的一個索引對映多個型別的索引在6.0.0版本中繼續發揮作用,但是將在7.0.0中完全刪除。 自第一次釋出彈出式搜尋以來,每個文件都儲存在一個索引中,並分配一個對映型別。

ES 學習路-indices APIs(1)

ES 學習之indices APIs 1.關閉萬用字元,_all等操作 在index api 中可以使用_all或者逗號操作符,或者是萬用字元*,但是這些操作可能會導致誤操作,所有我們可以通過在配置檔案中配置如下屬性,這樣api中將不能使用像_all這樣

redis學習高階主從配置(四)

主從配置 一個master可以擁有多個slave,一個slave又可以擁有多個slave,如此下去,形成了強大的多級伺服器叢集架構 比如,將ip為192.168.1.10的機器作為主伺服器,將ip為

ES學習路-安裝elasticsearch-head外掛

環境 centos7 elastichsearch-6.2.3 node v8.11.1 安裝elasticsearch 安裝elasticsearch請檢視:https://blog.csdn.net/mjlfto/article/details/79

MongoDB——高階查詢

1、 條件操作符<, <=, >, >= 這個操作符就不用多解釋了,最常用也是最簡單的db.collection.find({ "field" : { $gt: value } } ); // 大於: field > value db.colle