如何让MySQL MAX()认为NULL是最小的可能值?(How to make MySQL MAX() consider NULL the smallest possible value?)

编程入门 行业动态 更新时间:2024-10-25 04:26:55
如何让MySQL MAX()认为NULL是最小的可能值?(How to make MySQL MAX() consider NULL the smallest possible value?)

我有一个看起来有点像这样的查询:

SELECT weekEnd, MAX(timeMonday) FROM timesheet GROUP BY weekEnd

timeMonday的有效值为:null,-1,0,1-24。 目前,MAX()将这些值的优先级置于null,-1,0,1-24的顺序中,但实际上我想要的是-1,null,0,1-24,因此null被认为更高比-1。 我知道MAX无法做到这一点,那么实现它的最简单方法是什么?

I have a query that looks a bit like this:

SELECT weekEnd, MAX(timeMonday) FROM timesheet GROUP BY weekEnd

The valid values for timeMonday are: null, -1, 0, 1-24. At the moment, MAX() places the preference of those values in the order null, -1, 0, 1-24, however what I actually want is -1, null, 0, 1-24, so that null is considered higher than -1. I know MAX cant do this, so what's the easiest way to achieve it?

最满意答案

SELECT weekEnd,MAX(coalesce(timeMonday, - 。5))FROM timesheet GROUP BY weekEnd

然后将-.5转换回null

SELECT weekEnd, MAX(coalesce(timeMonday,-.5)) FROM timesheet GROUP BY weekEnd

Then convert -.5 back to null

更多推荐

本文发布于:2023-08-07 13:28:00,感谢您对本站的认可!
本文链接:https://www.elefans.com/category/jswz/34/1464273.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
本文标签:最小   MAX   MySQL   smallest   NULL

发布评论

评论列表 (有 0 条评论)
草根站长

>www.elefans.com

编程频道|电子爱好者 - 技术资讯及电子产品介绍!