* /trunk/src/gpstools/poisync
[gpstools.git] / branches / gpst.spread / postgres / update_things.sql
blob86e4b5013420812b9be6a50d57f37f3708c5816b
1 -- $Id$
3 -- OBS! Må fjernes når jeg er ferdig med å teste og opprenskinga er gjort.
4 \echo
5 \echo ================ Slett skrotpunkter. ================
7 DELETE FROM logg WHERE coor[0] < 51;
8 DELETE FROM logg WHERE coor[0] > 71;
9 DELETE FROM logg WHERE coor[1] < -2;
10 DELETE FROM logg WHERE coor[1] > 26;
11 DELETE FROM logg WHERE date < '2002-01-01';
12 DELETE FROM logg WHERE date > '2010-01-01';
13 DELETE FROM logg WHERE date BETWEEN '2005-09-24' AND '2006-02-08';
14 DELETE FROM logg WHERE date BETWEEN '2003-02-15 17:58:26Z' AND '2003-02-15 17:59:37Z';
15 DELETE FROM logg WHERE date BETWEEN '2003-07-15 16:06:58Z' AND '2003-07-15 16:08:05Z';
16 DELETE FROM logg WHERE date = '2002-12-10 01:25:28Z';
17 DELETE FROM logg WHERE date = '2002-10-06 22:41:10Z';
18 DELETE FROM logg WHERE date = '2006-02-12 03:33:15Z';
19 DELETE FROM logg WHERE date = '2006-02-19 14:15:07Z';
20 DELETE FROM logg WHERE ele = -1500;
22 \echo
23 \echo ================ Slett høyder som er på trynet ================
25 UPDATE logg SET ele = NULL WHERE ele < -1500;
26 UPDATE logg SET ele = NULL WHERE ele > 29000;
28 \echo
29 \echo ================ Rund av veipunkter til seks desimaler ================
31 UPDATE wayp SET coor = point(
32     round(coor[0]::numeric, 6),
33     round(coor[1]::numeric, 6)
36 \echo
37 \echo ================ Fjern duplikater i wayp ================
39 SELECT count(*)
40     AS "Antall i wayp før rensking"
41     FROM wayp;
43 BEGIN ISOLATION LEVEL SERIALIZABLE;
44     CREATE TEMPORARY TABLE dupfri
45     ON COMMIT DROP
46     AS (
47         SELECT
48             DISTINCT ON (
49                 coor[0], coor[1],
50                 name,
51                 ele,
52                 type,
53                 time,
54                 cmt,
55                 descr,
56                 src,
57                 sym
58             ) *
59             FROM wayp
60     );
61     TRUNCATE wayp;
62     INSERT INTO wayp (
63         SELECT *
64             FROM dupfri
65             ORDER BY name
66     );
67 COMMIT;
69 SELECT count(*)
70     AS "Antall i wayp etter rensking"
71     FROM wayp;
73 \echo
74 \echo ================ Fjern duplikater i events ================
76 SELECT count(*)
77     AS "Antall i events før rensking"
78     FROM events;
80 BEGIN ISOLATION LEVEL SERIALIZABLE;
81     CREATE TEMPORARY TABLE dupfri
82     ON COMMIT DROP
83     AS (
84         SELECT
85             DISTINCT ON (date, coor[0], coor[1], descr) *
86             FROM events
87     );
88     TRUNCATE events;
89     INSERT INTO events (
90         SELECT *
91             FROM dupfri
92             ORDER BY date
93     );
94 COMMIT;
96 SELECT count(*)
97     AS "Antall i events etter rensking"
98     FROM events;
100 \echo
101 \echo ================ Oppdater koordinater for bilder ================
103 UPDATE pictures SET coor = findpos(date)
104     WHERE coor IS NULL;
106 \echo ================ Rund av bildekoordinater ================
107 UPDATE pictures SET coor = point(
108     round(coor[0]::numeric, 6),
109     round(coor[1]::numeric, 6)
112 \echo
113 \echo ================ Fjern duplikater i pictures ================
115 SELECT count(*)
116     AS "Antall i pictures før rensking"
117     FROM pictures;
119 BEGIN ISOLATION LEVEL SERIALIZABLE;
120     CREATE TEMPORARY TABLE dupfri
121     ON COMMIT DROP
122     AS (
123         SELECT
124             DISTINCT ON (date, coor[0], coor[1], descr, filename, author) *
125             FROM pictures
126     );
127     TRUNCATE pictures;
128     INSERT INTO pictures (
129         SELECT *
130             FROM dupfri
131             ORDER BY date
132     );
133 COMMIT;
135 SELECT count(*)
136     AS "Antall i pictures etter rensking"
137     FROM pictures;
139 \i distupdate.sql