4

複数の列から最大値を列名とともに返す方法に関する多くの質問と回答を調べました。しかし、私はこの質問でここで問題を解決していません:説明します:

複数列のSQLMAX?

しかし、最大の価値を持つ列名を見つける方法がわかりませんか?何か案は?

4

1 に答える 1

7

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 ...
于 2012-08-30T11:16:28.240 に答える