Logs can be many things, and sometimes you are lucky that each line of the log is self-contained and has all the data you need to analyze the log. But most often a row in a log table pinpoints that at this exact moment in time, this specific activity occurred – and the interesting fact you need to analyze is how long time there was between rows in the log.
This is where analytic functions lag and lead come in very handy, as they can be used on a given row to retrieve information from previous rows (lag) or next rows (lead) in a given order. You can often choose to use either ...