ORDINAL函数用于将输入变量按从小到大排序后,返回排在第nth位的值。
命令格式
ORDINAL(BIGINT <nth>, <var1>, <var2>[,...])
-- 标准示例。
-- 返回3。
SELECT ordinal(3L, 1L, 3L, 7L, 5L, 2L, 4L, 6L); 参数说明
nth:必填,位置序号,起始从1开始。BIGINT类型。指定要返回的位置值为NULL时,返回NULL。
var:必填,待排序的值。BIGINT、DOUBLE、DATETIME或STRING类型。
返回值说明
排在第nth位的值,当不存在隐式转换时返回值同输入参数数据类型。
当有类型转换时,DOUBLE、BIGINT、STRING之间的转换返回DOUBLE类型;STRING、DATETIME之间的转换返回DATETIME类型。不允许其他的隐式转换。
NULL为最小值。
使用示例
--返回3。
SELECT ordinal(3L, 1L, 3L, 7L, 5L, 2L, 4L, 6L); 相关函数
ORDINAL函数属于其他函数,更多其他业务场景的函数请参见其他函数。
该文章对您有帮助吗?