Simba, А если я "создаю" имя поля в подзапросе?) то есть пишу ему алиас. Типа этого поля нет в таблицу.
То есть
(`column1` + `column2`) as `c1`
(`column2` + `column3`) as `c2`
(`column3` + `column1`) as `c3`
и потом надо выбрать максимальное из этих значений, то есть получить не само значение а именно c1/c2/c3 ......
Добавлено: 22.10.2020 / 18:36
Я сделал так, только у меня полей 16
SELECT `x`.*,
(CASE
WHEN GREATEST(`x`.`c1`, `x`.`c2`, `x`.`c3`) = `c1` THEN 'c1'
WHEN GREATEST(`x`.`c1`, `x`.`c2`, `x`.`c3`) = `c2` THEN 'c2'
WHEN GREATEST(`x`.`c1`, `x`.`c2`, `x`.`c3`) = `c3` THEN 'c3'
END) as `best`
FROM (SELECT `id`,
(`column1` + `column2`) AS `c1`,
(`column2` + `column3`) AS `c2`,
(`column3` + `column1`) AS `c3`
FROM `table`
GROUP BY `id`) as `x`
LEFT JOIN `table` as `f` ON (`f`.`id` = `x`.`id`)Добавлено: 22.10.2020 / 18:37
можно ли как-то это сделать проще?