Mysql在一个元组中获得最大值

时间:2015-06-23 11:26:50

标签: mysql

我从行数据中创建一个表格,如:

+----------------------+
| id | 1st | 2nd | 3th |
+----------------------+
|  0 |   1 |   3 |  2.5|
|  1 | 2.5 |   5 |    3|
|  2 |   4 | 3.5 |    0|
+----------------------+

我希望得到这个:

+--------------+
| id | max set | 
+--------------+
|  0 |     2nd | 
|  1 |     2nd |  
|  2 |     1st | 
+--------------+

我该怎么办?

2 个答案:

答案 0 :(得分:2)

您可以使用greatest()field()

执行此操作
select id,
       field(greatest(col1, col2, col3), col1, col2, col3) as ColWithMax
from table t;

答案 1 :(得分:0)

经过测试 - 使用CASE:     选择lineno,
    案件     当第1>第2和第2>第3时,然后第1'     当第二个>第一个和第二个>第三个然后'第二个'     当第3个>第1个和第3个>第2个然后第3个'     否则0     结束为' MaxValue'     来自yourtable;