Splunk Search

Any difference between NULL and null() in eval?

helge
Builder

In an eval expression, is there any difference between using NULL and null()?

Use case: I want to return null in an eval expression. I am finding that the following two expressions give the same result and I want to make sure that both are officially correct:

  • if (isnotnull (fieldX), fieldX * 10, NULL)
  • if (isnotnull (fieldX), fieldX * 10, null())
1 Solution

woodcock
Esteemed Legend

In the former case, you are setting it to the value of the field named NULL, which in your case, clearly doesn't exist right now HOWEVER that might not always be the case. It is equivalent to if(isnotnull(fieldX), fieldX*10, ThisFieldNameDoesNotExistSoTheValueThatItHasAlsoDoesNotExistSoRightNowThisEvaluatesToNULL). So it is very poor practice to use the former and you should use the latter.

View solution in original post

woodcock
Esteemed Legend

In the former case, you are setting it to the value of the field named NULL, which in your case, clearly doesn't exist right now HOWEVER that might not always be the case. It is equivalent to if(isnotnull(fieldX), fieldX*10, ThisFieldNameDoesNotExistSoTheValueThatItHasAlsoDoesNotExistSoRightNowThisEvaluatesToNULL). So it is very poor practice to use the former and you should use the latter.

helge
Builder

Now you mention it the answer is quite obvious 😉
Thanks!

0 Karma

DalJeanis
Legend

Ah yes, The Field Who Must Not Be Named...

Get Updates on the Splunk Community!

Prove Your Splunk Prowess at .conf25—No Prereqs Required!

Your Next Big Security Credential: No Prerequisites Needed We know you’ve got the skills, and now, earning the ...

Splunk Observability Cloud's AI Assistant in Action Series: Observability as Code

This is the sixth post in the Splunk Observability Cloud’s AI Assistant in Action series that digs into how to ...

Splunk Answers Content Calendar, July Edition I

Hello Community! Welcome to another month of Community Content Calendar series! For the month of July, we will ...