我正在重新设计用SQL编写的代码,并在order by
子句中使用了基数。那么它将以哪种方式订购记录?
e.g。
ORDER BY
cardinality(emp_ids),
earliest_due_date
其中emp_ids
就像这样准备了
CAST(
collect(employee.emp_id)
AS
NumberList
) AS emp_ids
答案 0 :(得分:3)
返回数字为documented:
CARDINALITY返回嵌套表中的元素数。该 返回类型为NUMBER。如果嵌套表为空,或者为null 收集,然后CARDINALITY返回NULL。
因此,您的order by将首先返回其中包含最少行数的emp_ids
表(空的,因为它将返回null,最后会出现)。