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!

Manage Edge Processor pipelines end to end with APIs

This guide uses the Data Management APIs to create an Edge Processor, onboard one instance, deploy a pipeline ...

Splunk Brings Proof of Control to Digital Asset Transfers

Digital assets now sit inside the core of financial services. HSBC launched its Tokenized Deposit Service in ...

Manage Ingest Processor pipelines end to end with APIs

This guide uses the Data Management APIs to create an Ingest Processor pipeline, deploy it to the ...