上一篇我們已經學會了使用kibana來查詢Elasticsearch資料,但有時候這種簡單預設的查詢功能,也無法滿足需求時,可能就需要使用Query DSL
來查詢資料。
Query DSL是一種非常靈活又富有表現力的查詢語言,採用JSON接口來實現查詢功能,並讓你的查詢語法更靈活、更精確、更昜和易除錯。
簡單的DSL語法如下:
{
"query": {
"match_all": {} //your query parameter
}
}
基本的查詢結構:
{
QUERY_NAME: {
ARGUMENT: VALUE,
ARGUMENT: VALUE,...
}
}
特定欄位查詢結構:
{
QUERY_NAME: {
FIELD_NAME: {
ARGUMENT: VALUE,
ARGUMENT: VALUE,...
}
}
}
查詢語法範例:
{
"query": {
"match": {
"field": "value"
}
}
}
接下來我們來準備執行下列語法:
{
"query": {
"match": {
"manufacturer": "Tigress"
}
}
}
接下來我們將會從kibana介面,開啟Query DSL輸入框,輸入要查詢的語法。
Add filter
-> Edit as Query DSL