使用运行时字段
Elastic Stack Serverless
使用 runtime_mappings
参数从现有字段中提取和创建运行时字段,或列,在搜索期间。
以下搜索从 release_date
创建一个 release_day_of_week
运行时字段,并在响应中返回它。
POST _sql?format=txt
{
"runtime_mappings": {
"release_day_of_week": {
"type": "keyword",
"script": """
emit(doc['release_date'].value.dayOfWeekEnum.toString())
"""
}
},
"query": """
SELECT * FROM library WHERE page_count > 300 AND author = 'Frank Herbert'
"""
}
API 返回
author | name | page_count | release_date |release_day_of_week
---------------+---------------+---------------+------------------------+-------------------
Frank Herbert |Dune |604 |1965-06-01T00:00:00.000Z|TUESDAY