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

时间:2012-08-30 11:10:56

标签: mysql sql

我已经探索了很多关于如何从多列和列名返回最大值的问题和答案。但我还没有解决问题 在这个问题中将解释:

SQL MAX of multiple columns?

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

1 个答案:

答案 0 :(得分: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 ...