Splunk Search

Eval field based on multiple fields?

matstap
Communicator

I have three fields A, B, C. I want to evaluate a field D that has the value of C that corresponds with the min value of B when 0 < B < 4, and A=1. How do I evaluate D? Can I use an eval statement in stats?

Example: if I have the given records with the same ID field,

A=1,B=6,C=2
A=1,B=2,C=3
A=1,B=1,C=5,

Then D=5

1 Solution

elliotproebstel
Champion

Given your clarification, I think this should do it (assuming the ID field you mentioned is in a field called unique_id😞

your base search
| eventstats min(B) AS min_B BY unique_id
| eval D=if(B=min_B AND 0<B AND B<4 AND A=1, C, NULL)

View solution in original post

elliotproebstel
Champion

Given your clarification, I think this should do it (assuming the ID field you mentioned is in a field called unique_id😞

your base search
| eventstats min(B) AS min_B BY unique_id
| eval D=if(B=min_B AND 0<B AND B<4 AND A=1, C, NULL)

matstap
Communicator

I forgot about eventstats. Thanks

0 Karma

elliotproebstel
Champion

I don't quite understand your description. It sounds like you want D=C if 0<B<4 and A=1. But this is true in both of the following lines:

A=1,B=2,C=3
A=1,B=1,C=5

So I don't understand how you've determined that D=5 and not D=3. Can you explain?

0 Karma

matstap
Communicator

I meant to write the min value of B when 0 < B < 4.

0 Karma
Get Updates on the Splunk Community!

Observability Unlocked: Kubernetes Monitoring with Splunk Observability Cloud

 Ready to master Kubernetes and cloud monitoring like the pros? Join Splunk’s Growth Engineering team for an ...

Update Your SOAR Apps for Python 3.13: What Community Developers Need to Know

To Community SOAR App Developers - we're reaching out with an important update regarding Python 3.9's ...

October Community Champions: A Shoutout to Our Contributors!

As October comes to a close, we want to take a moment to celebrate the people who make the Splunk Community ...