From c458a1240514fa572a7cbcb25d2e21b3bdbbd488 Mon Sep 17 00:00:00 2001 From: Lorenz Stechauner Date: Tue, 17 Oct 2023 23:50:45 +0200 Subject: [PATCH] Database: add v_area_commitment_bin --- sql/v01/20.view.sql | 14 +++++++++++++- 1 file changed, 13 insertions(+), 1 deletion(-) diff --git a/sql/v01/20.view.sql b/sql/v01/20.view.sql index e4288e5..4a5c850 100644 --- a/sql/v01/20.view.sql +++ b/sql/v01/20.view.sql @@ -57,7 +57,19 @@ FROM v_delivery d JOIN delivery_part_bin b ON (b.year, b.did, b.dpnr) = (d.year, d.did, d.dpnr) GROUP BY d.year, d.mgnr, bin HAVING SUM(value) > 0 -ORDER BY d.year, d.mgnr, bin; +ORDER BY d.year, d.mgnr, LENGTH(bin) DESC, bin; + +CREATE VIEW v_area_commitment_bin AS +SELECT s.year, c.mgnr, + c.vtrgid AS bin, + CAST(ROUND(SUM(COALESCE(area * min_kg_per_ha, 0)) / 10000.0, 0) AS INTEGER) AS min_kg, + CAST(ROUND(SUM(COALESCE(area * max_kg_per_ha, 0)) / 10000.0, 0) AS INTEGER) AS max_kg +FROM area_commitment c, season s + JOIN area_commitment_type t ON t.vtrgid = c.vtrgid +WHERE (year_from IS NULL OR year_from <= s.year) AND + (year_to IS NULL OR year_to >= s.year) +GROUP BY s.year, c.mgnr, c.vtrgid +ORDER BY s.year, c.mgnr, LENGTH(c.vtrgid) DESC, c.vtrgid; CREATE VIEW v_stat_season AS SELECT year,