Я пытаюсь усреднить данные уровня моего графика.Когда я выполняю свой запрос на уровне графика, он выдает «NULL» для всех строк, связанных с некоторыми именами строк.Когда я выполняю тот же запрос, пытаясь AVG черты и группы по имени строки, результат показывает «0».Мне нужно, чтобы оно показывало «NULL», чтобы оно не влияло на мое среднее значение.
Пример кода для выбора данных на уровне графика:
SELECT experiment_name, `year`, location_name, line_name, head_dap, height_cm, yield_bua
FROM data_amba
WHERE experiment_name = 'matspr' AND `year` = 2018 AND location_name = 'Stephen'
GROUP BY line_name, head_dap, height_cm, yield_bua;
Результаты:
+------------+----------+-----------+-----------+
| line_name | head_dap | height_cm | yield_bua |
+------------+----------+-----------+-----------+
| ND_GENESIS | NULL | NULL | 130.9 |
+------------+----------+-----------+-----------+
| ND_GENESIS | NULL | NULL | 131.3 |
+------------+----------+-----------+-----------+
| ND_GENESIS | NULL | NULL | 134.3 |
+------------+----------+-----------+-----------+
| PINNACLE | NULL | NULL | 144.9 |
+------------+----------+-----------+-----------+
| PINNACLE | NULL | NULL | 146.6 |
+------------+----------+-----------+-----------+
| PINNACLE | NULL | NULL | 163.9 |
+------------+----------+-----------+-----------+
| S2M177 | NULL | NULL | 107.6 |
+------------+----------+-----------+-----------+
| S2M177 | NULL | NULL | 142.6 |
+------------+----------+-----------+-----------+
| S2M177 | NULL | NULL | 168.6 |
+------------+----------+-----------+-----------+
| S2M178 | NULL | NULL | 114.6 |
+------------+----------+-----------+-----------+
| S2M178 | NULL | NULL | 132.9 |
+------------+----------+-----------+-----------+
| S2M178 | NULL | NULL | 154.6 |
+------------+----------+-----------+-----------+
| S2M179 | NULL | NULL | 132.6 |
+------------+----------+-----------+-----------+
| S2M179 | NULL | NULL | 137.9 |
+------------+----------+-----------+-----------+
| S2M179 | NULL | NULL | 140.6 |
+------------+----------+-----------+-----------+
| S2M180 | NULL | NULL | 101.9 |
+------------+----------+-----------+-----------+
| S2M180 | NULL | NULL | 147.3 |
+------------+----------+-----------+-----------+
| S2M180 | NULL | NULL | 169.6 |
+------------+----------+-----------+-----------+
| S2M181 | NULL | NULL | 111.9 |
+------------+----------+-----------+-----------+
| S2M181 | NULL | NULL | 125.3 |
+------------+----------+-----------+-----------+
| S2M181 | NULL | NULL | 138.9 |
+------------+----------+-----------+-----------+
Пример кода для выбора средних:
SELECT experiment_name, `year`, location_name, line_name, AVG(head_dap), AVG(height_cm), AVG(yield_bua)
FROM data_amba
WHERE experiment_name = 'matspr' AND `year` = 2018 AND location_name = 'Stephen'
GROUP BY line_name;
Результаты:
+------------+---------------+----------------+----------------+
| line_name | AVG(head_dap) | AVG(height_cm) | AVG(yield_bua) |
+------------+---------------+----------------+----------------+
| ND_GENESIS | 0 | 0 | 132.1667 |
+------------+---------------+----------------+----------------+
| PINNACLE | 0 | 0 | 151.8 |
+------------+---------------+----------------+----------------+
| S2M177 | 0 | 0 | 139.6 |
+------------+---------------+----------------+----------------+
| S2M178 | 0 | 0 | 134.0333 |
+------------+---------------+----------------+----------------+
| S2M179 | 0 | 0 | 137.0333 |
+------------+---------------+----------------+----------------+
| S2M180 | 0 | 0 | 139.6 |
+------------+---------------+----------------+----------------+
| S2M181 | 0 | 0 | 125.3667 |
+------------+---------------+----------------+----------------+
Когда 3 значения «NULL» усредняются, я ожидаю увидеть «NULL» в результатах, а не «0», так что это не повлияет на вычисления среднего значения, которые я выполняю вниз по течению.