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!

Best Practices: Splunk auto adjust pipeline queue

When you enable autoAdjustQueue in Splunk, maxSize should be understood as the queue size Splunk starts with ...

Laser Bananas and Edge Hubs: Exploring Operational Technology (OT) Data Through a ...

  OT is a different environment to traditional IT and can have interesting challenges when interfacing the ...

Event Series: Mastering AI Tokenomics and Splunk Agent Observability

Beyond the Black Box: Correlating AI Performance and Tokenomics with Splunk Agent Observability   As ...