LEAST
返回任何数据类型的表达式列表中的最小值。列表中的所有数据类型必须相同或兼容。任一表达式中的 NULL 值都将返回 NULL。结果可能各不相同,具体取决于区域设置的排序规则设置。
行为类型
稳定语法
LEAST ( { * | expression[,...] } )
参数
-
* | expression[,...]
- 要求值的表达式,为以下之一:
-
*
(星号)对查询表中的所有列进行求值。
-
表达式
任何数据类型的表达式。expression 中包含的函数必须具有确定性。
-
示例
LEASTB 返回 5 作为列表中的最小值:
=> SELECT LEASTB(7, 5, 10);
LEASTB
--------
5
(1 row)
如果在整数表达式周围添加引号,LEASTB 会将值作为字符串进行比较,并返回 "10" 作为最小值:
=> SELECT LEASTB('7', '5', '10');
LEASTB
--------
10
(1 row)
LEAST 返回 1.5,因为 INTEGER 2 隐式转换为 FLOAT:
=> SELECT LEAST(2, 1.5);
LEAST
-------
1.5
(1 row)
LEAST 根据 VMart 表 product_dimension
查询视图中的所有列,并返回每一行中的最小值:
=> CREATE VIEW query1 AS SELECT shelf_width, shelf_height, shelf_depth FROM product_dimension;
CREATE VIEW
=> SELECT shelf_height, shelf_width, shelf_depth, least(*) FROM query1 WHERE shelf_height = 5;
shelf_height | shelf_width | shelf_depth | least
--------------+-------------+-------------+-------
5 | 3 | 4 | 3
5 | 4 | 3 | 3
5 | 1 | 4 | 1
5 | 4 | 1 | 1
5 | 2 | 4 | 2
5 | 2 | 3 | 2
5 | 1 | 3 | 1
5 | 1 | 3 | 1
5 | 5 | 1 | 1
5 | 2 | 4 | 2
5 | 4 | 5 | 4
5 | 2 | 4 | 2
5 | 4 | 4 | 4
5 | 3 | 4 | 3
...