具有列名的多列的最大值?

Sul*_*man 4 mysql sql

我已经探讨了许多关于如何从多列返回最大值以及列名称的问题和答案.但我在这个问题中没有解决问题会解释:

多列的SQL MAX?

但我不知道如何找出具有最大价值的列名?有任何想法吗?

Ome*_*esh 6

您可以使用GREATEST函数在所有列中查找最大值:

SELECT @var_max_val:= GREATEST(col1, col2, col3, ...) AS max_value,
       CASE @var_max_val WHEN col1 THEN 'col1'
                         WHEN col2 THEN 'col2'
                         ...
       END AS max_value_column_name
FROM table_name
WHERE ...
Run Code Online (Sandbox Code Playgroud)