Splunk Search

How do I apply leftouter join into two diffetent search

govindparashar1
New Member

I needs to apply left outer join or NOT IN condition on two different search

search 1 :
index=abc host="xxx" sourcetype=access_combined_wcookie NOT (sessionId="-" OR isnull(sessionId)) method=GET
uri_path="/x/y/z*" | rex field=uri "^(?:[^/\n]*/){4}(?P\d+)" | eval pk=sessionId+CTM | dedup pk | table pk

Search 2:
index=def sourcetype=referral_activity APPOINTMENT_BOOKING_BOOKED | eval pk =substr(session_id, 9)+ctm | table pk |

join type=inner pk [search index=abc host="xxx" sourcetype=access_combined_wcookie NOT (sessionId="-" OR isnull(sessionId))
method=POST uri_path="/x/y/w*" | rex field=uri "^(?:[^/\n]*/){4}(?P\d+)" | eval pk=sessionId+CTM | dedup pk | table pk ]

Expected results : Unique pk values from search 1 which is not present into search 2 results

Please advise..

0 Karma

chimell
Motivator

Hi
Try this

 index=abc host="xxx" sourcetype=access_combined_wcookie NOT (sessionId="-" OR isnull(sessionId)) method=GET 
    uri_path="/x/y/z*" | rex field=uri "^(?:[^/n]*/){4}(?Pd+)" | eval pk=sessionId+CTM | dedup pk | table pk|appendcols[search index=def sourcetype=referral_activity APPOINTMENT_BOOKING_BOOKED | eval pk =substr(session_id, 9)+ctm | table pk | 
    join type=inner pk [search index=abc host="xxx" sourcetype=access_combined_wcookie NOT (sessionId="-" OR isnull(sessionId)) 
    method=POST uri_path="/x/y/w*" | rex field=uri "^(?:[^/n]*/){4}(?Pd+)" | eval pk=sessionId+CTM | dedup pk | table pk ]]
0 Karma

somesoni2
Revered Legend

Try like this

index=abc host="xxx" sourcetype=access_combined_wcookie NOT (sessionId="-" OR isnull(sessionId)) method=GET 
uri_path="/x/y/z*" | rex field=uri "^(?:[^/n]*/){4}(?Pd+)" | eval pk=sessionId+CTM | dedup pk | table pk | eval From=1 
append [search index=def sourcetype=referral_activity APPOINTMENT_BOOKING_BOOKED | eval pk =substr(session_id, 9)+ctm | table pk | 
join type=inner pk [search index=abc host="xxx" sourcetype=access_combined_wcookie NOT (sessionId="-" OR isnull(sessionId)) 
method=POST uri_path="/x/y/w*" | rex field=uri "^(?:[^/n]*/){4}(?Pd+)" | eval pk=sessionId+CTM | dedup pk | table pk ] | eval From=2]| stats values(From) as From by pk | where mvcount(From)=1 AND From=1
0 Karma
Got questions? Get answers!

Join the Splunk Community Slack to learn, troubleshoot, and make connections with fellow Splunk practitioners in real time!

Meet up IRL or virtually!

Join Splunk User Groups to connect and learn in-person by region or remotely by topic or industry.

Get Updates on the Splunk Community!

Persistent Queue at TcpOut — One of Splunk's Most Practical Features

Splunk introduced persistent queueing at the tcpout layer as one of the most practical resilience features in ...

Skip the Awkward Silence: Have a .conf-ersation at .conf26

Picture this. You arrive at .conf26 already having your socializing and networking plans mapped out. No ...

Rethinking Zero Trust: From Product Purchases to Logical Control Evidence

Implementing Zero Trust (ZT) across complex environments often falters at the very beginning due to a ...