我在elasticsearch中有一些数字字段,我必须实现一些逻辑,我需要创建一些脚本字段。我是kibana 4的脚本字段功能的新手,所以我需要一些基本格式的帮助,这些格式可用于在脚本字段中编写基本if else条件。
详细说明:
我在elasticsearch中有一个数字字段x
,我需要创建两个脚本字段f1
和f2
,以便
if x==0
f1 = 1 and f2 = 0
else
f1 = 0 and f2 = 1
在Kibana 4的脚本字段功能中只需要正确的语法即可。
还要说明是否可以这样做。
有关脚本字段的更多信息,请参阅:https://www.elastic.co/guide/en/kibana/current/settings.html
答案 0 :(得分:2)
要创建脚本字段,请转到索引的Settings
,然后单击Scripted Fields
选项卡。点击Add Scripted Field
。
在您的情况下,您将输入f1
作为名称,并输入doc['x'].value == 0 ? 1 : 0
作为脚本。然后,您将添加第二个脚本字段,其中f2
为名称,doc['x'].value != 0 ? 1 : 0
为脚本。
?:
是三元运算符,其工作方式与大多数语言类似 - 它在?
之前评估条件,如果值为true
,则表达式具有任何值的值在?
之后,如果它为假,则它具有:
之后的任何值。