Implement `generate_series` by @hiimtmac
Example 1
SwifQL.select(Fn.generate_series(1, 4)will generate
SELECT generate_series(1, 4)Example 2
SwifQL.select(Fn.generate_series("2019-10-01", "2019-10-04", "1 day"))will generate
SELECT generate_series('2019-10-01', '2019-10-04', '1 day')Example 3
SwifQL.select(Fn.generate_series("2019-10-01" => .date, "2019-10-04" => .date, "1 day"))will generate
SELECT generate_series('2019-10-01', '2019-10-04', '1 day')Example 4
let df = DateFormatter()
df.dateFormat = "yyyy-MM-dd HH:mm:ss"
df.timeZone = TimeZone(secondsFromGMT: 0)
SwifQL.select(Fn.generate_series(df.date(from: "2019-10-01 00:00:00")!, df.date(from: "2019-10-04 00:00:00")!, "1 day"))will generate
SELECT
generate_series(
(TIMESTAMP 'EPOCH' + make_interval(secs => 1569888000.0)),
(TIMESTAMP 'EPOCH' + make_interval(secs => 1570147200.0)),
'1 day'
)