* /trunk/src/gpstools/doc/gnuplot.txt
[gpstools.git] / postgres / update_things.sql
blob4b8781b36357304a4d384f49ae74052b855c9053
1 -- $Id$
2 -- File ID: 4765dc0a-fafb-11dd-874c-000475e441b9
4 -- Rund av veipunkter til seks desimaler -- {{{
5 \echo
6 \echo ================ Rund av veipunkter til seks desimaler ================
8 UPDATE wayp SET coor = point(
9     round(coor[0]::numeric, 6),
10     round(coor[1]::numeric, 6)
12 -- }}}
13 -- Fjern duplikater i wayp -- {{{
14 \echo
15 \echo ================ Fjern duplikater i wayp ================
17 COPY (SELECT '======== Antall i wayp før rensking: ' || count(*) from wayp) to STDOUT;
19 BEGIN ISOLATION LEVEL SERIALIZABLE;
20     CREATE TEMPORARY TABLE dupfri
21     ON COMMIT DROP
22     AS (
23         SELECT
24             DISTINCT ON (
25                 coor[0], coor[1],
26                 name,
27                 ele,
28                 type,
29                 time,
30                 cmt,
31                 descr,
32                 src,
33                 sym
34             ) *
35             FROM wayp
36     );
37     TRUNCATE wayp;
38     INSERT INTO wayp (
39         SELECT *
40             FROM dupfri
41             ORDER BY name
42     );
43 COMMIT;
45 COPY (SELECT '======== Antall i wayp etter rensking: ' || count(*) from wayp) to STDOUT;
46 -- }}}
48 -- Fjern duplikater i events -- {{{
49 \echo
50 \echo ================ Fjern duplikater i events ================
52 COPY (SELECT '======== Antall i events før rensking: ' || count(*) from events) to STDOUT;
54 BEGIN ISOLATION LEVEL SERIALIZABLE;
55     CREATE TEMPORARY TABLE dupfri
56     ON COMMIT DROP
57     AS (
58         SELECT
59             DISTINCT ON (date, coor[0], coor[1], descr) *
60             FROM events
61     );
62     TRUNCATE events;
63     INSERT INTO events (
64         SELECT *
65             FROM dupfri
66             ORDER BY date
67     );
68 COMMIT;
70 COPY (SELECT '======== Antall i events etter rensking: ' || count(*) from events) to STDOUT;
71 -- }}}
73 -- Oppdater koordinater for bilder -- {{{
74 \echo
75 \echo ================ Oppdater koordinater for bilder ================
77 UPDATE pictures SET coor = findpos(date)
78     WHERE coor IS NULL;
79 -- }}}
80 -- Rund av bildekoordinater -- {{{
81 \echo ================ Rund av bildekoordinater ================
82 UPDATE pictures SET coor = point(
83     round(coor[0]::numeric, 6),
84     round(coor[1]::numeric, 6)
86 -- }}}
87 -- Fjern duplikater i pictures -- {{{
88 \echo
89 \echo ================ Fjern duplikater i pictures ================
91 COPY (SELECT '======== Antall i pictures før rensking: ' || count(*) from pictures) to STDOUT;
93 BEGIN ISOLATION LEVEL SERIALIZABLE;
94     CREATE TEMPORARY TABLE dupfri
95     ON COMMIT DROP
96     AS (
97         SELECT
98             DISTINCT ON (date, coor[0], coor[1], descr, filename, author) *
99             FROM pictures
100     );
101     TRUNCATE pictures;
102     INSERT INTO pictures (
103         SELECT *
104             FROM dupfri
105             ORDER BY date
106     );
107 COMMIT;
109 COPY (SELECT '======== Antall i pictures etter rensking: ' || count(*) from pictures) to STDOUT;
110 -- }}}
112 -- Oppdater koordinater for filmer -- {{{
113 \echo
114 \echo ================ Oppdater koordinater for filmer ================
116 UPDATE film SET coor = findpos(date)
117     WHERE coor IS NULL;
118 -- }}}
119 -- Rund av filmkoordinater -- {{{
120 \echo ================ Rund av filmkoordinater ================
121 UPDATE film SET coor = point(
122     round(coor[0]::numeric, 6),
123     round(coor[1]::numeric, 6)
125 -- }}}
126 -- Fjern duplikater i film -- {{{
127 \echo
128 \echo ================ Fjern duplikater i film ================
130 COPY (SELECT '======== Antall i film før rensking: ' || count(*) from film) to STDOUT;
132 BEGIN ISOLATION LEVEL SERIALIZABLE;
133     CREATE TEMPORARY TABLE dupfri
134     ON COMMIT DROP
135     AS (
136         SELECT
137             DISTINCT ON (date, coor[0], coor[1], descr, filename, author) *
138             FROM film
139     );
140     TRUNCATE film;
141     INSERT INTO film (
142         SELECT *
143             FROM dupfri
144             ORDER BY date
145     );
146 COMMIT;
148 COPY (SELECT '======== Antall i film etter rensking: ' || count(*) from film) to STDOUT;
149 -- }}}
151 -- Oppdater koordinater for lyd -- {{{
152 \echo
153 \echo ================ Oppdater koordinater for lyd ================
155 UPDATE lyd SET coor = findpos(date)
156     WHERE coor IS NULL;
157 -- }}}
158 -- Rund av lydkoordinater -- {{{
159 \echo ================ Rund av lydkoordinater ================
160 UPDATE lyd SET coor = point(
161     round(coor[0]::numeric, 6),
162     round(coor[1]::numeric, 6)
164 -- }}}
165 -- Fjern duplikater i lyd -- {{{
166 \echo
167 \echo ================ Fjern duplikater i lyd ================
169 COPY (SELECT '======== Antall i lyd før rensking: ' || count(*) from lyd) to STDOUT;
171 BEGIN ISOLATION LEVEL SERIALIZABLE;
172     CREATE TEMPORARY TABLE dupfri
173     ON COMMIT DROP
174     AS (
175         SELECT
176             DISTINCT ON (date, coor[0], coor[1], descr, filename, author) *
177             FROM lyd
178     );
179     TRUNCATE lyd;
180     INSERT INTO lyd (
181         SELECT *
182             FROM dupfri
183             ORDER BY date
184     );
185 COMMIT;
187 COPY (SELECT '======== Antall i lyd etter rensking: ' || count(*) from lyd) to STDOUT;
188 -- }}}
190 \i distupdate.sql