это действительно легко, если вам не нужно поле test_name
. если это так, просто оберните весь запрос в:
SELECT `Batch Number`, max(Failures) from (**YOURQUERYHERE**) as myquery GROUP BY Failures;
это даст вам максимальное количество сбоев по номеру партии, но не даст вам test_name, которое соответствует максимальному количеству сбоев. чтобы получить test_name, вам нужно выполнить соединение подзапроса, как показано здесь . Или здесь .
в вашем случае, поскольку ваш запрос уже довольно сложный, я бы рекомендовал превратить его во временную таблицу:
CREATE TEMPORARY TABLE mytable (batch varchar(30), testname varchar(30), failures INT);
INSERT INTO mytable (**YOURQUERYHERE**);
тогда вы можете получить максимум, выполнив один из шагов, рекомендованных для этих ссылок. например:
SELECT t1.batch, t1.testname, t1.failures
FROM mytable AS t1,
(SELECT batch, MAX(failures) AS maxfail
FROM mytable
GROUP BY batch) AS t2
WHERE t2.batch = t1.batch
AND t1.failures = t2.maxfail;