📄️ base64_to_bitmap
导入外部 bitmap 数据到 StarRocks 时,需要先对 bitmap 数据进行序列化和 Base64 编码,生成 Base64 字符串。导入字符串到 StarRocks 时再进行 Base64 到 bitmap 的转化。
📄️ bitmap_agg
将一列中的多行非 NULL 数值合并成一行 BITMAP 值,即多行转一行。
📄️ bitmap_and
计算两个 bitmap 的交集,返回新的 bitmap。
📄️ bitmap_andnot
计算两个输入的 bitmap 的差集。差集是指包含所有存在于第一个集合且不存在于第二个集合的元素的集合。
📄️ bitmap_contains
计算输入值是否在 Bitmap 列中。
📄️ bitmap_count
统计 bitmap 中不重复值的个数。
📄️ bitmap_empty
返回一个空 bitmap,主要用于 insert 或 stream load 时填充默认值,如下例:
📄️ bitmap_from_binary
将特定格式的 Varbinary 类型的字符串转换为 Bitmap。可用于导入 Bitmap 数据到 StarRocks。
📄️ bitmap_from_string
将一个字符串转化为一个 bitmap,字符串由逗号分隔的一组 UInt64 数字组成。比如将 "0, 1, 2" 字符串转化为一个 bitmap,会对其中的第 0,1,2 位会进行设置,当输入字段不合法时返回 NULL。
📄️ bitmap_has_any
计算两个 Bitmap 列是否存在相交元素,返回值是 Boolean 值。
📄️ bitmap_hash
对任意类型的输入计算 32 位的哈希值,返回包含该哈希值的 bitmap。
📄️ bitmap_intersect
输入一组 bitmap 值,求这一组 bitmap 值的交集,并返回。
📄️ bitmap_max
获取Bitmap中的最大值。如果Bitmap为NULL,则返回NULL。如果Bitmap为空,默认返回NULL。
📄️ bitmap_min
获取Bitmap中的最小值。如果Bitmap为NULL,则返回NULL。如果Bitmap为空,默认返回NULL。
📄️ bitmap_or
计算两个输入的 bitmap 的并集,并返回新的 bitmap。并集指将两个集合中的所有元素合并在一起后组成的集合。重复元素只计入一次。
📄️ bitmap_remove
从 Bitmap 中删除指定的数值。
📄️ bitmap_subset_in_range
从 Bitmap 中返回取值在指定范围内的元素。返回的元素是 Bitmap 的子集。
📄️ bitmap_subset_limit
根据指定的起始值,从 BITMAP 中截取指定个数的元素。返回的元素是 Bitmap 的子集。
📄️ bitmap_to_array
将 BITMAP 中的所有值组合成 BIGINT 类型的数组。
📄️ bitmap_to_base64
将 bitmap 转换为 Base64 字符串。该函数从 2.5 版本开始支持。
📄️ bitmap_to_binary
将 Bitmap 根据 StarRocks 定义的规则,转换为二进制字符串。
📄️ bitmap_to_string
将一个 bitmap 转化成一个逗号分隔的字符串。字符串中包含 bitmap 中所有 bit 位。输入是 null 的话会返回 null。
📄️ bitmap_union
输入一组 bitmap 值,求这一组 bitmap 值的并集。
📄️ bitmap_union_count
计算输入的一组 bitmap 值的并集,并返回并集的基数。该函数从 2.3 版本开始支持。
📄️ bitmap_union_int
聚合函数,计算 TINYINT,SMALLINT 和 INT 类型的列中不同值的个数,返回值和 COUNT(DISTINCT expr) 相同。
📄️ bitmap_xor
计算两个 Bitmap 中不重复元素所构成的集合,逻辑上等价于 bitmapandnot(bitmapor(lhs, rhs), bitmap_and(lhs, rhs))(补集)。
📄️ intersect_count
计算两个 bitmap 之间相同元素的个数,不要求数据分布正交。第一个参数是 Bitmap 列,第二个参数是用来过滤的维度列,第三个参数是变长参数,含义是过滤维度列的不同取值。如果没有相同元素,则返回 0。
📄️ sub_bitmap
根据 offset 指定的起始位置,从 BITMAP 类型的 src 中截取 len 个元素,返回的元素为 src 的子集。该函数主要用于分页查询相关场景。该函数从 2.5 版本开始支持。
📄️ subdivide_bitmap
将大 bitmap 拆成多个子 bitmap。
📄️ to_bitmap
输入为取值在 0 ~ 18446744073709551615 区间的 unsigned bigint,输出为包含该元素的 bitmap。如果输入值不在该范围内,会返回 NULL。
📄️ unnest_bitmap
unnest_bitmap 是一种表函数 (table function),用于将一个 bitmap 展开成多行。