-- SQL Säuberungsskripte für Bundesländer und Jahre
-- gemäß der Einträge in k_laender_fuer_aktualisierung
--
-- Neuerstellung 2011-03-21

-- (c) ENDA GmbH & Co. KG, 2011
-- Dieses Skript steht unter GNU Gpl. V3

-- Rev. 0, 2011-03-21 10:32, mlt


-- Datentabellen säubern (alle betroffenen Jahre und Länder):

-- Abfälle:

delete from p_vabf_geheimk abfg
using p_vabf abf, p_betrieb b, k_laender_fuer_aktualisierung ka
where abfg.p_vabf_id  = abf.id
  and abf.p_betrieb_id = b.id
  and b.date_from = ka.jahr * 10000 + 101
  and b.date_to   = ka.jahr * 10000 + 1231
  and b.land_id = ka.land_id;

delete from p_vabf abf
using p_betrieb b, k_laender_fuer_aktualisierung ka
where abf.p_betrieb_id = b.id
  and b.date_from = ka.jahr * 10000 + 101
  and b.date_to   = ka.jahr * 10000 + 1231
  and b.land_id = ka.land_id;


-- Abwasser:

delete from p_vabw_geheimk abwg
using p_vabw abw, p_betrieb b, k_laender_fuer_aktualisierung ka
where abwg.p_vabw_id  = abw.id
  and abw.p_betrieb_id = b.id
  and b.date_from = ka.jahr * 10000 + 101
  and b.date_to   = ka.jahr * 10000 + 1231
  and b.land_id = ka.land_id;


delete from p_vabw abw
using p_betrieb b, k_laender_fuer_aktualisierung ka
where abw.p_betrieb_id = b.id
  and b.date_from = ka.jahr * 10000 + 101
  and b.date_to   = ka.jahr * 10000 + 1231
  and b.land_id = ka.land_id;


-- Freisetzungen:

delete from p_freis_geheimk freisg
using p_freis freis, p_betrieb b, k_laender_fuer_aktualisierung ka
where freisg.p_freis_id  = freis.id
  and freis.p_betrieb_id = b.id
  and b.date_from = ka.jahr * 10000 + 101
  and b.date_to   = ka.jahr * 10000 + 1231
  and b.land_id = ka.land_id;


delete from p_freis freis
using p_betrieb b, k_laender_fuer_aktualisierung ka
where freis.p_betrieb_id = b.id
  and b.date_from = ka.jahr * 10000 + 101
  and b.date_to   = ka.jahr * 10000 + 1231
  and b.land_id = ka.land_id;


-- Tätigkeiten:

delete from p_taet_geheimk taetg
using p_taet taet, p_betrieb b, k_laender_fuer_aktualisierung ka
where taetg.p_taet_id  = taet.id
  and taet.p_betrieb_id = b.id
  and b.date_from = ka.jahr * 10000 + 101
  and b.date_to   = ka.jahr * 10000 + 1231
  and b.land_id = ka.land_id;


delete from p_taet taet
using p_betrieb b, k_laender_fuer_aktualisierung ka
where taet.p_betrieb_id = b.id
  and b.date_from = ka.jahr * 10000 + 101
  and b.date_to   = ka.jahr * 10000 + 1231
  and b.land_id = ka.land_id;


-- Betriebe:

delete from p_betrieb_vorgaenger bv
using p_betrieb b, k_laender_fuer_aktualisierung ka
where bv.p_betrieb_id = b.id
  and b.date_from = ka.jahr * 10000 + 101
  and b.date_to   = ka.jahr * 10000 + 1231
  and b.land_id = ka.land_id;

delete from p_betrieb_vorgaenger bv
using p_betrieb b, k_laender_fuer_aktualisierung ka
where bv.p_betrieb_vorgaenger_id = b.id
  and b.date_from = ka.jahr * 10000 + 101
  and b.date_to   = ka.jahr * 10000 + 1231
  and b.land_id = ka.land_id;

delete from p_betrieb_geheimk bg
using p_betrieb b, k_laender_fuer_aktualisierung ka
where bg.p_betrieb_id = b.id
  and b.date_from = ka.jahr * 10000 + 101
  and b.date_to   = ka.jahr * 10000 + 1231
  and b.land_id = ka.land_id;

delete from p_betrieb b
using k_laender_fuer_aktualisierung ka
where b.date_from = ka.jahr * 10000 + 101
  and b.date_to   = ka.jahr * 10000 + 1231
  and b.land_id = ka.land_id;

