20 lines
577 B
SQL
20 lines
577 B
SQL
INSERT INTO flow_version (workspace_id, path, value, schema, created_by, created_at)
|
|
SELECT workspace_id, path, value, schema, edited_by, edited_at
|
|
FROM flow
|
|
WHERE NOT EXISTS (SELECT 1 FROM flow_version WHERE flow_version.workspace_id = flow.workspace_id AND flow_version.path = flow.path);
|
|
UPDATE flow
|
|
SET versions = subquery.versions
|
|
FROM (
|
|
SELECT
|
|
path,
|
|
workspace_id,
|
|
array_agg(id ORDER BY created_at ASC) AS versions
|
|
FROM
|
|
flow_version
|
|
GROUP BY
|
|
path,
|
|
workspace_id
|
|
) subquery
|
|
WHERE
|
|
flow.path = subquery.path
|
|
AND flow.workspace_id = subquery.workspace_id; |