MySQL 取一行数据中的最大和最小值


 

以下使用MySQL原生函数GREATEST和LEAST获取一行数据中的最小和最大值。

GREATEST(value1,value2,...)

 

具有两个或多个参数,返回最大(最大值)的参数。使用与相同的规则比较参数 LEAST()。

 

mysql> SELECT GREATEST(2,0);
-> 2
mysql> SELECT GREATEST(34.0,3.0,5.0,767.0);
-> 767.0
mysql> SELECT GREATEST('B','A','C');
-> 'C'


GREATEST()NULL如果参数为,则 返回 NULL。

 

LEAST(value1,value2,...)

具有两个或多个参数,返回最小(最小值)的参数。使用以下规则比较参数:

  • 如果有任何参数NULL,则结果为NULL无需比较。

  • 如果所有参数都是整数值,则将它们作为整数进行比较。

  • 如果至少一个参数为双精度,则将它们作为双精度值进行比较。否则,如果至少一个参数是一个 DECIMAL值,则将它们作为DECIMAL 进行比较

  • 如果参数包含数字和字符串的混合,则将它们作为数字进行比较。

  • 如果任何参数是非二进制(字符)字符串,则将参数作为非二进制字符串进行比较。

  • 在所有其他情况下,将参数作为二进制字符串进行比较。

返回类型LEAST()是比较参数类型的聚合类型。

mysql> SELECT LEAST(2,0);
        -> 0
mysql> SELECT LEAST(34.0,3.0,5.0,767.0);
        -> 3.0
mysql> SELECT LEAST('B','A','C');
        -> 'A'

 


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM