Open UlleKr opened 3 years ago
Alustame valikuga
SELECT *
FROM import.repr_kart
WHERE Muude_toimikute_nrd REGEXP '[0-9]'
AND persoon IS NULL
AND (arreteerimiskuupäev = '' OR arreteerimiskuupäev BETWEEN '1940-06' AND '1942')
AND (süüdimõistmiskuupäev = '' OR süüdimõistmiskuupäev BETWEEN '1940' AND '1943')
AND (deporteerimiskuupäev = '' OR deporteerimiskuupäev BETWEEN '1939' AND '1943')
ORDER BY deporteerimiskuupäev DESC
;
Muude_toimikute_nrd LIKE '%м/о%' OR Muude_toimikute_nrd LIKE '%мо%'
Kellel selline täheühend esineb toimiku nr ees või järel, siis selle toimiku numbri peaks kirjutama kujul nr+M, näiteks 1821M, leiab 1941 küüditatute repr. kaardid lihtsamini üles.
Aga arreteerimiskuupäeva piirang tuleks vist sel juhul maha võtta, siin on üks juhus, kus 1941 küüditatu arreteeriti 1945 Siberis.
esimest reha võiks ehk teha selles päringus
SELECT k.kirjekood, k.persoon AS K_persoon, y.persoon AS Y_persoon
, y.nr, k.kirje, y.rk_kirje
FROM tmp.yhnr y
LEFT JOIN repis.kirjed k
ON k.eesnimic = y.eesnimic
AND k.perenimic = y.perenimic
AND k.isanimic = y.isanimic
AND k.kirje REGEXP y.re
AND y.nr != LEFT(k.sünd, 4)
AND y.nr != LEFT(k.surm, 4)
WHERE y.persoon IS NULL
AND k.persoon IS NOT NULL
GROUP BY K_persoon
ORDER BY rk_kirje
Kui tundub, et mõlemas kirje tulbas on sama isik, kopeeri persoonikood ühest lahtrist teise
K_persoon -> Y_persoon
.
Esimene reha ~900 kirjet ühendatud
UPDATE tmp.yhnr y
LEFT JOIN repis.kirjed k
ON k.eesnimic = y.eesnimic
AND k.perenimic = y.perenimic
AND k.isanimic = y.isanimic
AND k.kirje REGEXP y.re
AND y.nr != LEFT(k.sünd, 4)
AND y.nr != LEFT(k.surm, 4)
SET y.persoon = k.persoon
WHERE y.persoon IS NULL
AND k.persoon IS NOT NULL;
242 kirjet ühendasin sünniaastat arvestades
UPDATE tmp.yhnr y
LEFT JOIN repis.kirjed k
ON k.eesnimic = y.eesnimic
AND k.perenimic = y.perenimic
AND LEFT(k.sünd, 4) = LEFT(y.sünd, 4)
AND k.kirje REGEXP y.re
AND y.nr != LEFT(k.sünd, 4)
AND y.nr != LEFT(k.surm, 4)
SET y.persoon = k.persoon
WHERE y.persoon IS NULL
AND k.persoon IS NOT NULL
eesnimi, isanimi ja sünniaasta ühendas veel 114 kirjet
UPDATE tmp.yhnr y
LEFT JOIN repis.kirjed k
ON k.kirje REGEXP y.re
AND k.eesnimic = y.eesnimic
AND k.isanimic = y.isanimic AND k.isanimi != ''
AND LEFT(k.sünd, 4) = LEFT(y.sünd, 4)
AND y.nr != LEFT(k.sünd, 4)
AND y.nr != LEFT(k.surm, 4)
SET y.persoon = k.persoon
WHERE y.persoon IS NULL
AND k.persoon IS NOT NULL
314 kirjet said omale persoonikoodi juba ühendatud kirjete põhjal:
UPDATE tmp.yhnr y1
RIGHT JOIN tmp.yhnr y2 ON y1.kirjekood = y2.kirjekood
SET y1.persoon = y2.persoon
WHERE y1.persoon IS NULL
AND y2.persoon IS NOT NULL
Kuupäevad: Arreteerimiskuupäev 1940-06-01 kuni 1942-01-01 või tühi; süüdimõistmise kuupäev < 1943-01-01 deporteerimiskuupäev < 1943-01-01