Splunk Search

correlated subsearch

composite
Engager

Hi,
I'm looking for a way to do an equivalent of a SQL correlated subquery in Splunk. [I did look at Splunk for SQL users - it doesn't have an answer].

I have events of the form: _time user=A type=B count=N. I'd like to express the following SQL in Splunk:
Select type, sum(count) from T
where _time=(Select max(_time) from T as T' where T'.type=T.type and T'.user=T.user)
group by type
where T._time + 24h < current_time()

Is there a way to do this?

Thank you

Tags (1)
0 Karma
1 Solution

sideview
SplunkTrust
SplunkTrust

I'm no master of correlated subqueries, but this might be it.

I'm reading your SQL as saying "find me most recent entries in T for each combination of type and user, and give me the type and the sum of the count field from those entries. Then group these by type and show me just the rows earlier than 24 hours ago.

... latest=-24h | eventstats max(_time) as maxTime by user type | where _time=maxTime | stats sum(count) as count by type

If my interpretation is wrong (as it very well may be) can you write it out in english?

View solution in original post

sideview
SplunkTrust
SplunkTrust

I'm no master of correlated subqueries, but this might be it.

I'm reading your SQL as saying "find me most recent entries in T for each combination of type and user, and give me the type and the sum of the count field from those entries. Then group these by type and show me just the rows earlier than 24 hours ago.

... latest=-24h | eventstats max(_time) as maxTime by user type | where _time=maxTime | stats sum(count) as count by type

If my interpretation is wrong (as it very well may be) can you write it out in english?

Get Updates on the Splunk Community!

Splunk Mobile: Your Brand-New Home Screen

Meet Your New Mobile Hub  Hello Splunk Community!  Staying connected to your data—no matter where you are—is ...

Introducing Value Insights (Beta): Understand the Business Impact your organization ...

Real progress on your strategic priorities starts with knowing the business outcomes your teams are delivering ...

Enterprise Security (ES) Essentials 8.3 is Now GA — Smarter Detections, Faster ...

As of today, Enterprise Security (ES) Essentials 8.3 is now generally available, helping SOC teams simplify ...