unnest
 Use unnest to flatten a list taken as input to produce
                        multiple records with a single record for each element in the list. Based on
                        the number of items a field contains, this command discards the current
                        record and generates new records. Each record includes the
                            unnested_field, which represents an item. All other fields
                        come from the original record. 
 The input for unnest is LIST, which comes from
                        the jsonParse function. For more information, see Structure types. Any other types, such as MAP,
                            String and numbers, are treated as a list with
                        one item in unnest. 
Command structure
The following example describes the format of this command.
unnest field into unnested_field
Example query
The following example parses a JSON object string and expands a list of field events.
fields jsonParse(@message) as json_message | unnest json_message.events into event | display event.name
The log event for this example query could be a JSON string as follows:
{ "events": [ { "name": "exception" }, { "name": "user action" } ] }
In this case, the sample query produces two records in the query result,
                        one with event.name as exception and another with
                            event.name as user action
Example query
The following example flattens a list and then filters out items.
fields jsonParse(@message) as js | unnest js.accounts into account | filter account.type = "internal"
Example query
The following example flattens a list for aggregation.
fields jsonParse(trimmedData) as accounts | unnest accounts into account | stats sum(account.droppedSpans) as n by account.accountId | sort n desc | limit 10