Class H2GenerateSeriesFunction

All Implemented Interfaces:
SetReturningFunctionRenderer, SqmSetReturningFunctionDescriptor

public class H2GenerateSeriesFunction extends NumberSeriesGenerateSeriesFunction
H2 generate_series function. When possible, the system_range function is used directly. If ordinality is requested, the arguments are temporals or anything other than literals, this emulation comes into play. It essentially renders a system_range with a specified maximum size that serves as "iteration variable". References to the value are replaced with expressions of the form start + step * iterationVariable and a condition is added either to the query or join where the function is used to ensure that the value is less than or equal to the stop value.