May 2018
Beginner to intermediate
452 pages
11h 26m
English
Suppose we have a SQL query that determines the day number of a plot check by subtracting its date from the oldest date in the plot_checks table, then pulls lab_id and the average of median_height for all plants in the given lab on the given day.
We'll run this query in a new SQLModel method called get_growth_by_lab():
def get_growth_by_lab(self):
query = (
'SELECT date - (SELECT min(date) FROM plot_checks) AS day, '
'lab_id, avg(median_height) AS avg_height FROM plot_checks '
'GROUP BY date, lab_id ORDER BY day, lab_id;')
return self.query(query)
We'll get back a table of data that looks something like this:
| Day | Lab ID | Average height |
| 0 | A | 7.4198750000000000 |
| 0 | B | 7.3320000000000000 |
| 0 | C | 7.5377500000000000 ... |