diff --git a/datastore/migrations/00012_AddViewMeasurements_down.sql b/datastore/migrations/00012_AddViewMeasurements_down.sql new file mode 100644 index 0000000..d38c298 --- /dev/null +++ b/datastore/migrations/00012_AddViewMeasurements_down.sql @@ -0,0 +1,5 @@ +-- bactdb +-- Matthew R Dillon + +DROP VIEW IF EXISTS v_measurements; + diff --git a/datastore/migrations/00012_AddViewMeasurements_up.sql b/datastore/migrations/00012_AddViewMeasurements_up.sql new file mode 100644 index 0000000..13c55ca --- /dev/null +++ b/datastore/migrations/00012_AddViewMeasurements_up.sql @@ -0,0 +1,26 @@ +-- bactdb +-- Matthew R Dillon + +CREATE OR REPLACE VIEW v_measurements AS +SELECT s.strain_name, + o.observation_name, + som.measurement_table, + tm.text_measurement_name, + nm.measurement_value, + nm.confidence_interval, + nm.unit_type_id +FROM strainsobsmeasurements som +INNER JOIN strainsobservations so + ON som.strainsobservations_id = so.id +INNER JOIN strains s + ON so.strain_id = s.id +INNER JOIN observations o + ON so.observations_id = o.id +LEFT OUTER JOIN text_measurements tm + ON som.measurement_id = tm.id + AND som.measurement_table = 'text' +LEFT OUTER JOIN numerical_measurements nm + ON som.measurement_id = nm.id + AND som.measurement_table = 'num' +ORDER BY measurement_table, o.observation_name ASC +