Mercurial > lada > lada-server
diff db_schema/stammdaten_data_query.sql @ 1278:b63e0abcbf84
Fixed query for messprogramme to show messprogramme without e-ort.
author | Raimund Renkert <raimund.renkert@intevation.de> |
---|---|
date | Thu, 02 Feb 2017 17:28:31 +0100 |
parents | 69042c56944d |
children | 3ac30d816c9a |
line wrap: on
line diff
--- a/db_schema/stammdaten_data_query.sql Thu Feb 02 15:41:05 2017 +0100 +++ b/db_schema/stammdaten_data_query.sql Thu Feb 02 17:28:31 2017 +0100 @@ -30,7 +30,7 @@ 11 Probenehmer 4 Abfrage der Probenehmer 12 Datensatzerzeuger 5 Abfrage der Datensatzerzeuger 14 Messprogrammkategorie 6 Abfrage der Messprogrammkategorien -9 kein Filter 2 SELECT messprogramm.id, stammdaten.mess_stelle.netzbetreiber_id AS netzId, CASE WHEN messprogramm.mst_id = messprogramm.labor_mst_id THEN messprogramm.mst_id ELSE messprogramm.mst_id || '-' || messprogramm.labor_mst_id END AS mstLaborId, datenbasis.datenbasis AS dBasis, CASE WHEN messprogramm.ba_id = '1' THEN 'RB' ELSE 'IB' END AS messRegime, probenart.probenart AS pArt, messprogramm.umw_id AS umwId, messprogramm.media_desk AS deskriptoren, messprogramm.probenintervall AS intervall, ort.ort_id AS ortId, ort.gem_id AS eGemId, verwaltungseinheit.bezeichnung AS eGem FROM land.messprogramm LEFT JOIN stammdaten.mess_stelle ON (messprogramm.mst_id = stammdaten.mess_stelle.id) LEFT JOIN stammdaten.datenbasis ON (messprogramm.datenbasis_id = datenbasis.id) LEFT JOIN stammdaten.probenart ON (messprogramm.probenart_id = probenart.id) LEFT OUTER JOIN land.ortszuordnung_mp ON ( messprogramm.id = ortszuordnung_mp.messprogramm_id AND ortszuordnung_mp.ortszuordnung_typ = 'E' ) LEFT OUTER JOIN stammdaten.ort ON (ortszuordnung_mp.ort_id = ort.id) JOIN stammdaten.verwaltungseinheit ON (ort.gem_id = verwaltungseinheit.id) Abfrage der Messprogramme ohne Filter +9 kein Filter 2 SELECT messprogramm.id, stammdaten.mess_stelle.netzbetreiber_id AS netzId, CASE WHEN messprogramm.mst_id = messprogramm.labor_mst_id THEN messprogramm.mst_id ELSE messprogramm.mst_id || '-' || messprogramm.labor_mst_id END AS mstLaborId, datenbasis.datenbasis AS dBasis, CASE WHEN messprogramm.ba_id = '1' THEN 'RB' ELSE 'IB' END AS messRegime, probenart.probenart AS pArt, messprogramm.umw_id AS umwId, messprogramm.media_desk AS deskriptoren, messprogramm.probenintervall AS intervall, ort.ort_id AS ortId, ort.gem_id AS eGemId, verwaltungseinheit.bezeichnung AS eGem FROM land.messprogramm LEFT JOIN stammdaten.mess_stelle ON (messprogramm.mst_id = stammdaten.mess_stelle.id) LEFT JOIN stammdaten.datenbasis ON (messprogramm.datenbasis_id = datenbasis.id) LEFT JOIN stammdaten.probenart ON (messprogramm.probenart_id = probenart.id) LEFT OUTER JOIN land.ortszuordnung_mp ON ( messprogramm.id = ortszuordnung_mp.messprogramm_id AND ortszuordnung_mp.ortszuordnung_typ = 'E' ) LEFT OUTER JOIN stammdaten.ort ON (ortszuordnung_mp.ort_id = ort.id) LEFT OUTER JOIN stammdaten.verwaltungseinheit ON (ort.gem_id = verwaltungseinheit.id) Abfrage der Messprogramme ohne Filter 1 kein Filter 0 SELECT probe.id AS id, probe.hauptproben_nr AS hpNr, datenbasis.datenbasis AS dBasis, stammdaten.mess_stelle.netzbetreiber_id AS netzId, probe.mst_id AS mstId, probe.umw_id AS umwId, probenart.probenart AS pArt, to_char(probe.probeentnahme_beginn, 'dd.mm.YYYY hh24:MI') AS peBegin, to_char(probe.probeentnahme_ende, 'dd.mm.YYYY hh24:MI') AS peEnd, ort.ort_id AS ortId, ort.gem_id AS eGemId, verwaltungseinheit.bezeichnung AS eGem, probe.id_alt AS probeId FROM land.probe LEFT JOIN stammdaten.mess_stelle ON (probe.mst_id = stammdaten.mess_stelle.id) LEFT JOIN stammdaten.datenbasis ON (probe.datenbasis_id = datenbasis.id) LEFT JOIN stammdaten.probenart ON (probe.probenart_id = probenart.id) LEFT OUTER JOIN land.ortszuordnung ON ( probe.id = ortszuordnung.probe_id AND ortszuordnung.ortszuordnung_typ = 'E' ) LEFT OUTER JOIN stammdaten.ort ON (ortszuordnung.ort_id = ort.id) LEFT OUTER JOIN stammdaten.verwaltungseinheit ON (ort.gem_id = verwaltungseinheit.id) Abfrage aller Proben ohne Filter 2 HP-Nr-Filter 0 SELECT probe.id AS id, probe.hauptproben_nr AS hpNr, datenbasis.datenbasis AS dBasis, stammdaten.mess_stelle.netzbetreiber_id AS netzId, probe.mst_id AS mstId, probe.umw_id AS umwId, probenart.probenart AS pArt, to_char(probe.probeentnahme_beginn, 'dd.mm.YYYY hh24:MI') AS peBegin, to_char(probe.probeentnahme_ende, 'dd.mm.YYYY hh24:MI') AS peEnd, ort.ort_id AS ortId, ort.gem_id AS eGemId, verwaltungseinheit.bezeichnung AS eGem, probe.id_alt AS probeId FROM land.probe LEFT JOIN stammdaten.mess_stelle ON (probe.mst_id = stammdaten.mess_stelle.id) LEFT JOIN stammdaten.datenbasis ON (probe.datenbasis_id = datenbasis.id) LEFT JOIN stammdaten.probenart ON (probe.probenart_id = probenart.id) LEFT OUTER JOIN land.ortszuordnung ON ( probe.id = ortszuordnung.probe_id AND ortszuordnung.ortszuordnung_typ = 'E' ) LEFT OUTER JOIN stammdaten.ort ON (ortszuordnung.ort_id = ort.id) LEFT OUTER JOIN stammdaten.verwaltungseinheit ON (ort.gem_id = verwaltungseinheit.id) WHERE (probe.hauptproben_nr LIKE CASE WHEN :hpNrFilter = '' THEN '%' ELSE :hpNrFilter END) Abfrage der Proben mit Wildcardfilter für die Hauptproben-Nr. 3 Probe-ID-Filter 0 SELECT probe.id AS id, probe.hauptproben_nr AS hpNr, datenbasis.datenbasis AS dBasis, stammdaten.mess_stelle.netzbetreiber_id AS netzId, probe.mst_id AS mstId, probe.umw_id AS umwId, probenart.probenart AS pArt, to_char(probe.probeentnahme_beginn, 'dd.mm.YYYY hh24:MI') AS peBegin, to_char(probe.probeentnahme_ende, 'dd.mm.YYYY hh24:MI') AS peEnd, ort.ort_id AS ortId, ort.gem_id AS eGemId, verwaltungseinheit.bezeichnung AS eGem, probe.id_alt AS probeId FROM land.probe LEFT JOIN stammdaten.datenbasis ON (probe.datenbasis_id = datenbasis.id) LEFT JOIN stammdaten.probenart ON (probe.probenart_id = probenart.id) LEFT JOIN stammdaten.mess_stelle ON (probe.mst_id = stammdaten.mess_stelle.id) LEFT OUTER JOIN land.ortszuordnung ON ( probe.id = ortszuordnung.probe_id AND ortszuordnung.ortszuordnung_typ = 'E' ) LEFT OUTER JOIN stammdaten.ort ON (ortszuordnung.ort_id = ort.id) LEFT OUTER JOIN stammdaten.verwaltungseinheit ON (ort.gem_id = verwaltungseinheit.id) WHERE (probe.id_alt LIKE CASE WHEN :probeIdFilter = '' THEN '%' ELSE :probeIdFilter END) Abfrage der Proben mit Wildcardfilter für die Probe_id