I want to mix in external timezone per location info to filter rows that has timestamp without timezone values.
How can I express in Jooq this SQL (Postgresql) snippet
WITH
now(locaton, value) AS (
SELECT
*
FROM unnest(
ARRAY[1,2]::BIGINT[],
ARRAY['2017-05-28 09:30','2017-05-28 10:30']::TIMESTAMP[])
)
SELECT *
FROM now;
Less desirable but still working snippet is:
WITH
now(locaton, value) AS (
SELECT
unnest(ARRAY[1,2]::BIGINT[]) as location,
unnest(ARRAY['2017-05-28 09:30','2017-05-28 10:30']::TIMESTAMP[]) as value
)
SELECT *
FROM now;
Probably more correct one (blocked by Add support for the SQL Standard WITH ORDINALITY clause #5799)
SELECT location, value
FROM
unnest(ARRAY[1,2]::BIGINT[]) WITH ORDINALITY as location
JOIN unnest(ARRAY['2017-05-28 09:30','2017-05-28 10:30']::TIMESTAMP[]) WITH ORDINALITY as value
USING (ordinality);
To get
location | value
------------+---------------------
1 | 2017-05-28 09:30:00
2 | 2017-05-28 10:30:00
(2 rows)