Второй вопрос в течение двух дней по этой теме.Заказ по минимальному значению в результате, при соблюдении группировки в mysql
я в настоящее время я использую следующий запрос:
SELECT name,suite,webpagetest.id,MIN(priority) AS min_pri
FROM webpagetest,comparefileerrors
WHERE vco="aof" AND user="1" AND calibreversion="9"
AND webpagetest.id=comparefileerrors.id
AND comparefileerrors.priority IS NOT NULL
GROUP BY id,suite
ORDER BY COALESCE(suite,name),min_pri
ASC ;
Это дает мне результаты, которые выглядят следующим образом:
+-----------------------------+-----------------------------+-------+---------+
| name | suite | id | min_pri |
+-----------------------------+-----------------------------+-------+---------+
| bz1273_cmdline_execplussvdb | NULL | 6203 | 2 |
| bz1508_SEGV_password | NULL | 6185 | 2 |
| bz1747_bad_lvsf | NULL | 36683 | 1 |
| set_get_status | shortsRepairDB_2009.1_suite | 6193 | 0 |
| u2uDemo | shortsRepairDB_2009.1_suite | 6195 | 0 |
| change_sets | shortsRepairDB_2009.1_suite | 6194 | 0 |
| add_delete_mask_polygon | shortsRepairDB_2009.1_suite | 6191 | 0 |
| isolate_shorts | shortsRepairDB_2009.1_suite | 6196 | 0 |
| add_delete_text | shortsRepairDB_2009.1_suite | 6197 | 0 |
| assign_short_AND_user_info | shortsRepairDB_2009.1_suite | 6198 | 2 |
| comment_short | shortsRepairDB_2009.1_suite | 6192 | 2 |
+-----------------------------+-----------------------------+-------+---------+
Однако то, что я хотел бы сделать, это заказать их по минимальному приоритету который встречается в наборе, если он есть. Suite является необязательным полем, и если он равен нулю, тогда нет необходимости делать эту группировку. Я хочу использовать минимальное значение в наборе, чтобы определить общее размещение пакета.
Я в большой степени рассматриваю возможность переориентации своего приложения на использование PHP для этой сортировки, но для среднего времени было бы неплохо сделать это с помощью mysql.
Результаты должны выглядеть следующим образом:
+-----------------------------+-----------------------------+-------+---------+
| name | suite | id | min_pri |
+-----------------------------+-----------------------------+-------+---------+
| set_get_status | shortsRepairDB_2009.1_suite | 6193 | 0 |
| u2uDemo | shortsRepairDB_2009.1_suite | 6195 | 0 |
| change_sets | shortsRepairDB_2009.1_suite | 6194 | 0 |
| add_delete_mask_polygon | shortsRepairDB_2009.1_suite | 6191 | 0 |
| isolate_shorts | shortsRepairDB_2009.1_suite | 6196 | 0 |
| add_delete_text | shortsRepairDB_2009.1_suite | 6197 | 0 |
| assign_short_AND_user_info | shortsRepairDB_2009.1_suite | 6198 | 2 |
| comment_short | shortsRepairDB_2009.1_suite | 6192 | 2 |
| bz1747_bad_lvsf | NULL | 36683 | 1 |
| bz1273_cmdline_execplussvdb | NULL | 6203 | 2 |
| bz1508_SEGV_password | NULL | 6185 | 2 |
+-----------------------------+-----------------------------+-------+---------+
Какой диапазон значений будет иметь приоритет? – davethegr8