我探索了许多有关如何从多个列中返回最大值以及列名的问题和答案。但是我这里还没有解决问题,这个问题会解释:
多个列的SQL MAX?
但是我不知道如何找出具有最大价值的列名称?有任何想法吗?
您可以使用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 ...