approx_top_k聚合函數

適用於:勾選“是”磚的SQL勾選“是”Databricks Runtime 10.2及以上版本

返回頂部k類中最常出現的項值expr以及它們的近似計數。

語法

approx_top_kexpr[,k[,maxItemsTracked]])過濾器在哪裏氣孔導度

此函數也可以作為窗口函數使用條款。

參數

  • expr:字符串、布爾值、日期、時間戳或數字類型的表達式。

  • k:可選的大於0的INTEGER字麵值。如果k未指定,則默認為5

  • maxItemsTracked:一個大於或等於的可選INTEGER字麵值k.如果maxItemsTracked未指定,則默認為10000

  • 氣孔導度:一個可選的布爾表達式,過濾用於聚合的行。

返回

結果作為STRUCT類型的ARRAY返回,其中每個STRUCT包含一個字段用於值(具有其原始輸入類型)和字段(類型為LONG),包含出現的大致次數。數組按下行。

聚合函數返回頂部k表達式中最常出現的項值expr以及它們的近似計數。每次計數的誤差可能高達2.0numRows/maxItemsTracked在哪裏numRows是總行數。較高的值maxItemsTracked以增加內存使用為代價提供更好的準確性。包含少於的表達式maxItemsTracked不同的項目將產生準確的項目計數。結果包括值作為其在結果中的項。

例子

>選擇approx_top_k (expr)值(0)(0)(1)(1),(2),(3),(4),(4)選項卡(expr);[{“項”:4,“數”:2},{“項”:1、“數”:2},{“項”:0,“數”:2},{“項”:3,“數”:1},{“項”:2,“數”:1}]>選擇approx_top_k (expr 2)值' a ', ' b ', ' c ', ' c ', ' c ', ' c ', ' d ', ' d '選項卡(expr);[{“項”:“c”,“數”,4},{“項”:“d”,“數”:2}]>選擇approx_top_k (expr, 100)從值(0)(1)(1),(2),(2),(2)選項卡(expr);[{“項”:2,“數”:3},{“項”:1、“數”:2},{“項”:0,“數”:1}]