elasticsearch/docs/reference/scripting-languages/painless/painless-statements.md
Colleen McGinnis ab5ff67bce
[docs] Add products to docset.yml (#128274)
* add products to docset.yml

* add page-level painless tags
2025-05-21 13:55:32 -05:00

1 KiB
Raw Blame History

mapped_pages products
https://www.elastic.co/guide/en/elasticsearch/painless/current/painless-statements.html
id
painless

Statements [painless-statements]

Painless supports all of Javas control flow statements except the switch statement.

Conditional statements [_conditional_statements]

If / Else [_if_else]

if (doc[item].size() == 0) {
  // do something if "item" is missing
} else if (doc[item].value == 'something') {
  // do something if "item" value is: something
} else {
  // do something else
}

Loop statements [_loop_statements]

For [_for]

Painless also supports the for in syntax:

for (def item : list) {
  // do something
}
for (item in list) {
  // do something
}

While [_while]

while (ctx._source.item < condition) {
  // do something
}

Do-While [_do_while]

do {
  // do something
}
while (ctx._source.item < condition)