Multi-pass queries
Not all queries can be satisfied with a single pass across the data. Sometimes, the query requires the data to be scanned multiple times, with the results of a previous pass acting as input to the next pass. The query planner figures this all out as part of instructing the data nodes on what to do. Multi-pass queries use the concept of virtual columns and annotating rows of data to pass information between passes