Use view instead of ad-hoc query

This commit is contained in:
D. Berge
2020-10-09 13:56:29 +02:00
parent ba8eeb82d3
commit 22b7aa5112

View File

@@ -10,26 +10,8 @@ async function list (projectId, opts = {}) {
// const limit = Math.abs(Number(opts.itemsPerPage)) || null;
const text = `
SELECT
pl.*,
(SELECT count(*)
FROM preplot_points pp
WHERE pp.line = pl.line
AND pp.class = pl.class
AND pp.point BETWEEN SYMMETRIC pl.fsp AND pl.lsp
) num_points,
(ts1-ts0) duration,
ST_Distance(pp0.geometry, pp1.geometry) length,
ST_Azimuth(pp0.geometry, pp1.geometry)*180.0/pi() azimuth,
-- speed? Nah
ST_Transform(ST_MakeLine(pp0.geometry, pp1.geometry), 4326)::jsonb geometry
FROM planned_lines pl
INNER JOIN preplot_points pp0
ON pl.line = pp0.line AND pl.fsp = pp0.point AND pl.class = pp0.class
INNER JOIN preplot_points pp1
ON pl.line = pp1.line AND pl.lsp = pp1.point AND pl.class = pp1.class
INNER JOIN preplot_points pp
ON pl.line = pp.line AND pp.point BETWEEN SYMMETRIC pl.fsp AND pl.fsp AND pl.class = pp.class
SELECT *
FROM planned_lines_summary
ORDER BY sequence ASC;
`;