Try using google first before asking a question. I typed "Multi Pass SQL" into google and had a response in 1 second.
Generating multi-pass SQL breaks the user's query down into a number of simple queries that are processed separately by the database and then automatically grouping the results of the separate queries. This multi-step processing can even be performed in parallel, to the extent that the database is configured to optimise and parallelise these queries as they arrive.
Answers to a broad range of seemingly innocent queries can only be achieved with multi-pass SQL, where each pass represents a sub-query necessary to calculate the final result.
You do not need a parachute to skydive. You only need a parachute to skydive twice.