Project

General

Profile

« Previous | Next » 

Revision 12398

bugfix: validation/aggregating/plots/SALVIAS/bien3_validations_salvias_db_original.VegCore.sql: can't double-JOIN like in MySQL (`JOIN a JOIN b ON a_conds AND b_conds`), so split double-JOIN into two JOINs w/ own ON clauses

View differences:

trunk/validation/aggregating/plots/SALVIAS/bien3_validations_salvias_db_original.VegCore.sql
77 77
-- ------------------
78 78
CREATE OR REPLACE VIEW _plots_07_list_of_plots_with_counts_of_individuals_per_species AS
79 79
SELECT DISTINCT p.project_name, pm."SiteCode"
80
FROM projects p JOIN "PlotMetadata" pm JOIN "PlotObservations" po
81
ON p.project_id=pm.project_id AND pm."PlotID"=po."PlotID"
80
FROM projects p
81
JOIN "PlotMetadata" pm ON p.project_id=pm.project_id
82
JOIN "PlotObservations" po ON pm."PlotID"=po."PlotID"
82 83
AND po."NoInd">1
83 84
GROUP BY p.project_name, "SiteCode"
84 85
ORDER BY p.project_name, "SiteCode"
......
90 91
-- ------------------
91 92
CREATE OR REPLACE VIEW _plots_08_list_of_plots_which_use_percent_cover AS
92 93
SELECT DISTINCT p.project_name, pm."SiteCode"
93
FROM projects p JOIN "PlotMetadata" pm JOIN "PlotObservations" po
94
ON p.project_id=pm.project_id AND pm."PlotID"=po."PlotID"
94
FROM projects p
95
JOIN "PlotMetadata" pm ON p.project_id=pm.project_id
96
JOIN "PlotObservations" po ON pm."PlotID"=po."PlotID"
95 97
AND cover_percent IS NOT NULL
96 98
GROUP BY p.project_name, "SiteCode"
97 99
ORDER BY p.project_name, "SiteCode"
......
103 105
-- ------------------
104 106
CREATE OR REPLACE VIEW _plots_09_list_of_plots_which_use_line_intercept AS
105 107
SELECT DISTINCT p.project_name, pm."SiteCode"
106
FROM projects p JOIN "PlotMetadata" pm JOIN "PlotObservations" po
107
ON p.project_id=pm.project_id AND pm."PlotID"=po."PlotID"
108
FROM projects p
109
JOIN "PlotMetadata" pm ON p.project_id=pm.project_id
110
JOIN "PlotObservations" po ON pm."PlotID"=po."PlotID"
108 111
AND intercept_cm IS NOT NULL
109 112
GROUP BY p.project_name, "SiteCode"
110 113
ORDER BY p.project_name, "SiteCode"
......
124 127
CREATE OR REPLACE VIEW _plots_10_count_of_individuals_per_plot_in_each_project AS
125 128
SELECT p.project_name, "SiteCode" AS plotcode,
126 129
SUM("NoInd") AS individuals
127
FROM projects p JOIN "PlotMetadata" pm JOIN "PlotObservations" po
128
ON p.project_id=pm.project_id AND pm."PlotID"=po."PlotID"
130
FROM projects p
131
JOIN "PlotMetadata" pm ON p.project_id=pm.project_id
132
JOIN "PlotObservations" po ON pm."PlotID"=po."PlotID"
129 133
GROUP BY p.project_name, "SiteCode"
130 134
ORDER BY p.project_name, "SiteCode"
131 135
LIMIT 10
......
163 167
IF(infra_ep_1 IS NULL,IFNULL(auth,''),
164 168
TRIM(CONCAT_WS(' ',IFNULL(infra_rank_1,''),IFNULL(infra_ep_1,''),IFNULL(infra_auth_1,'')))
165 169
))) AS taxon
166
FROM projects p JOIN "PlotMetadata" pm JOIN "PlotObservations" po
167
ON p.project_id=pm.project_id AND pm."PlotID"=po."PlotID"
170
FROM projects p
171
JOIN "PlotMetadata" pm ON p.project_id=pm.project_id
172
JOIN "PlotObservations" po ON pm."PlotID"=po."PlotID"
168 173
) AS a
169 174
GROUP BY project_name, plotcode
170 175
ORDER BY project_name, plotcode
......
183 188
IF(infra_ep_1 IS NULL,IFNULL(auth,''),
184 189
TRIM(CONCAT_WS(' ',IFNULL(infra_rank_1,''),IFNULL(infra_ep_1,''),IFNULL(infra_auth_1,'')))
185 190
))) AS taxon
186
FROM projects p JOIN "PlotMetadata" pm JOIN "PlotObservations" po
187
ON p.project_id=pm.project_id AND pm."PlotID"=po."PlotID"
191
FROM projects p
192
JOIN "PlotMetadata" pm ON p.project_id=pm.project_id
193
JOIN "PlotObservations" po ON pm."PlotID"=po."PlotID"
188 194
ORDER BY p.project_name, "SiteCode", taxon
189 195
LIMIT 10
190 196
;
......
202 208
TRIM(CONCAT_WS(' ',IFNULL(infra_rank_1,''),IFNULL(infra_ep_1,''),IFNULL(infra_auth_1,'')))
203 209
))) AS taxon,
204 210
SUM("NoInd") AS individuals
205
FROM projects p JOIN "PlotMetadata" pm JOIN "PlotObservations" po
206
ON p.project_id=pm.project_id AND pm."PlotID"=po."PlotID"
211
FROM projects p
212
JOIN "PlotMetadata" pm ON p.project_id=pm.project_id
213
JOIN "PlotObservations" po ON pm."PlotID"=po."PlotID"
207 214
GROUP BY p.project_name, "SiteCode", taxon
208 215
ORDER BY p.project_name, "SiteCode", taxon
209 216
LIMIT 10
......
229 236
TRIM(CONCAT_WS(' ',IFNULL(infra_rank_1,''),IFNULL(infra_ep_1,''),IFNULL(infra_auth_1,'')))
230 237
))) AS taxon,
231 238
AVG(cover_percent) AS mean_cover
232
FROM projects p JOIN "PlotMetadata" pm JOIN "PlotObservations" po
233
ON p.project_id=pm.project_id AND pm."PlotID"=po."PlotID"
239
FROM projects p
240
JOIN "PlotMetadata" pm ON p.project_id=pm.project_id
241
JOIN "PlotObservations" po ON pm."PlotID"=po."PlotID"
234 242
AND cover_percent IS NOT NULL
235 243
GROUP BY p.project_name, "SiteCode", taxon
236 244
ORDER BY p.project_name, "SiteCode", taxon
......
256 264
TRIM(CONCAT_WS(' ',IFNULL(infra_rank_1,''),IFNULL(infra_ep_1,''),IFNULL(infra_auth_1,'')))
257 265
))) AS taxon,
258 266
intercept_cm
259
FROM projects p JOIN "PlotMetadata" pm JOIN "PlotObservations" po
260
ON p.project_id=pm.project_id AND pm."PlotID"=po."PlotID"
267
FROM projects p
268
JOIN "PlotMetadata" pm ON p.project_id=pm.project_id
269
JOIN "PlotObservations" po ON pm."PlotID"=po."PlotID"
261 270
AND intercept_cm IS NOT NULL
262 271
ORDER BY p.project_name, "SiteCode", taxon
263 272
LIMIT 10
......
268 277
-- ------------------
269 278
CREATE OR REPLACE VIEW _plots_17_count_of_subplots_per_plot_for_each_project AS
270 279
SELECT project_name, pm."SiteCode" AS plotcode, COUNT(DISTINCT "Line") as subplots
271
FROM projects p JOIN "PlotMetadata" pm JOIN "PlotObservations" po
272
ON p.project_id=pm.project_id AND pm."PlotID"=po."PlotID"
280
FROM projects p
281
JOIN "PlotMetadata" pm ON p.project_id=pm.project_id
282
JOIN "PlotObservations" po ON pm."PlotID"=po."PlotID"
273 283
GROUP BY project_name, pm."SiteCode"
274 284
ORDER BY project_name, pm."SiteCode"
275 285
LIMIT 10
......
282 292
-- ------------------
283 293
CREATE OR REPLACE VIEW _plots_18_list_of_subplots_codes_for_each_plot_for_each_project AS
284 294
SELECT DISTINCT project_name, pm."SiteCode" AS plotcode, "Line" as subplot
285
FROM projects p JOIN "PlotMetadata" pm JOIN "PlotObservations" po
286
ON p.project_id=pm.project_id AND pm."PlotID"=po."PlotID"
295
FROM projects p
296
JOIN "PlotMetadata" pm ON p.project_id=pm.project_id
297
JOIN "PlotObservations" po ON pm."PlotID"=po."PlotID"
287 298
AND pm."SiteCode" IS NOT NULL
288 299
ORDER BY project_name, pm."SiteCode", subplot
289 300
LIMIT 10

Also available in: Unified diff