Elasticsearch bool查詢命令詳解

2021-10-24 08:59:23 字數 963 閱讀 2391

bool查詢介紹

如果我們需要針對多個字段進行多維度的查詢,那麼布林查詢是你的最佳選擇,它可以通過組合多個查詢語句得到最終得結果.

bool查詢的使用

示例

下面的查詢用於查詢 title 字段匹配 "測試標題" 並且不被標識為 spam 的文件。那些被標識為 starred 或在2014之後的文件,將比另外那些文件擁有更高的排名。如果 兩者 都滿足,那麼它排名將更高:

},

"must_not": },

"should": [

},}}]}

}

注意: 如果沒有 must 語句,那麼至少需要能夠匹配其中的一條 should 語句。但,如果存在至少一條 must 語句,則對 should 語句的匹配沒有要求。

增加帶過濾器(filtering)的查詢

如果我們不想因為文件的時間而影響得分,可以用 filter 語句來重寫前面的例子:

},

"must_not": },

"should": [}],

"filter": } }}

}

上例中range 查詢已經從 should 語句中移到 filter 語句

通過將 range 查詢移到 filter 語句中,我們將它轉成不評分的查詢,將不再影響文件的相關性排名。

如果你需要通過多個不同的標準來過濾你的文件,bool 查詢本身也可以被用做不評分的查詢。簡單地將它放置到 filter 語句中並在內部構建布林邏輯:

},

"must_not": },

"should": [}],

"filter": }},

}}],

"must_not": [}]

}}

}}

MySQL MariaDB grant命令詳解

mysql mariadb中可以給你乙個使用者授予如select,insert,update,delete等其中的乙個或者多個許可權,主要使用grant命令,用法格式為 grant 許可權 on 資料庫物件 to 使用者 一 grant 普通資料使用者,查詢 插入 更新 刪除 資料庫中所有表資料的權...

Linux Unix vmstat命令實戰詳解

vmstat命令是最常見的linux unix監控工具,可以展現給定時間間隔的伺服器的狀態值,包括伺服器的cpu使用率,記憶體使用,虛擬記憶體交換情況,io讀寫情況。這個命令是我檢視linux unix最喜愛的命令,乙個是linux unix都支援,二是相比top,我可以看到整個機器的cpu,記憶體...

Entity Framework 遷移命令 詳解

enable migrations啟用遷移 add migration為掛起的model變化新增遷移指令碼 update database將掛起的遷移更新到資料庫 get migrations獲取已經應用的遷移 執行update database來公升級資料庫到最新版本.我們可以通過指定 verbo...