 <p>I'm not sure I get you right, but if I do, something like that seems to do the trick:</p> <pre><code>select RESULT.* from classmembercall as RESULT inner join classmembercall as INPUT ON RESULT.startedontick BETWEEN INPUT.startedontick and INPUT.finishedontick AND RESULT.finishedontick BETWEEN INPUT.startedontick and INPUT.finishedontick where INPUT.CallGUID = 'CAE8210C-617A-49F4-A739-E442F39B55B0' </code></pre> <p>it should give you all calls between start and end tick of given log entry</p> <p>if you need to filter it additionally by the same InstanceGUID, then:</p> <pre><code>select RESULT.* from classmembercall as RESULT inner join classmembercall as INPUT ON RESULT.startedontick BETWEEN INPUT.startedontick and INPUT.finishedontick AND RESULT.finishedontick BETWEEN INPUT.startedontick and INPUT.finishedontick AND RESULT.InstanceGUID = INPUT.InstanceGUID where INPUT.CallGUID = 'CAE8210C-617A-49F4-A739-E442F39B55B0' </code></pre> <p>note that given your sample data, you'll always get only the item with provided CallGuild - because all of the rows have different InstanceGUIDs...</p> <p>Good luck :)</p>