[英]Fetching the max value row wise in mysql
我有一个表结构
ID Col_1 col_2 col_3 col_4
1 34 23 45 32
2 20 19 67 18
3 40 10 76 86
我在这里想要col_1,col_,col_3,col_4的最大值,所以我的输出看起来像
ID Col_1 col_2 col_3 col_4 max
1 34 23 45 32 45
2 20 19 67 18 67
3 40 10 76 86 86
我尝试使用
SELECT ID, MAX(col_1,col_2,col_3,col_4) as max
FROM demo
GROUP BY ID
任何帮助将非常感激。
您需要规范化表结构。 尝试这个
select ID, max(Col_1) as max_value from
(
select ID, Col_1 from table
union all
select ID, Col_2 from table
union all
select ID, Col_3 from table
union all
select ID, Col_4 from table
) as t group by ID
你可以使用mysql函数GREATEST
SELECT id, col1, col2, col3, col4,
GREATEST(col1, col2, col3, col4) AS mx FROM demo
你可能会尝试这个
SELECT ID, col_1, col_2, col_3, col_4,
GREATEST(col_1, col_2, col_3, col_4) AS max_value FROM table_name
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.