MySQL / MariaDB Get last 7 days summarized and with avarages calculated
First, a very nice first post. Both ddl and sample data makes it easy to recreate the setup. Second, all you have to do with your query is to add the date dimension:

SELECT plant_id, date(created_at) as day, avg(temperature) 
FROM plant_data 
WHERE created_at &gt;= '2020-02-15 00:00:00' 
  AND created_at &lt;= '2020-02-17 00:00:00' 
GROUP BY plant_id, date(created_at);


You might also be interested in the BETWEEN predicate:

SELECT plant_id, date(created_at) as day, avg(temperature) 
FROM plant_data 
WHERE created_at BETWEEN '2020-02-15 00:00:00' 
                     AND '2020-02-17 00:00:00' 
GROUP BY plant_id, date(created_at);


I haven't checked, but there is a risk that day is a reserved word. In addition I prefer to add more meaning to my identifiers, so I would possibly choose:

SELECT plant_id, date(created_at) as created_date, avg(temperature) 
FROM plant_data 
WHERE created_at BETWEEN '2020-02-15 00:00:00' 
                     AND '2020-02-17 00:00:00' 
GROUP BY plant_id, date(created_at);


As a complement to posting ddl and insert data you can also use - for example - Fiddle. There are more sites like this, and I here choosed this one for no particular reason.