文件 | |
文件 | merge.hpp |
函数 | |
std::unique_ptr< cudf::table > | cudf::merge (std::vector< table_view > const &tables_to_merge, std::vector< cudf::size_type > const &key_cols, std::vector< cudf::order > const &column_order, std::vector< cudf::null_order > const &null_precedence={}, rmm::cuda_stream_view stream=cudf::get_default_stream(), rmm::device_async_resource_ref mr=cudf::get_current_device_resource_ref()) |
合并一组已排序的表。 更多... | |
std::unique_ptr<cudf::table> cudf::merge | ( | std::vector< table_view > const & | tables_to_merge, |
std::vector< cudf::size_type > const & | key_cols, | ||
std::vector< cudf::order > const & | column_order, | ||
std::vector< cudf::null_order > const & | null_precedence = {} , |
||
rmm::cuda_stream_view | stream = cudf::get_default_stream() , |
||
rmm::device_async_resource_ref | mr = cudf::get_current_device_resource_ref() |
||
) |
合并一组已排序的表。
将已排序的表合并成一个包含所有表数据的已排序表。每个表的键列必须根据该列指定的参数(cudf::column_order 和 cudf::null_order)进行排序。
cudf::logic_error | 如果 tables_to_merge 中的表列数不同 |
cudf::logic_error | 如果 tables_to_merge 中的表列类型不匹配 |
cudf::logic_error | 如果 key_cols 为空 |
cudf::logic_error | 如果 key_cols 的大小大于 tables_to_merge 中表的列数 |
cudf::logic_error | 如果 key_cols 大小与 column_order 大小不匹配 |
[in] | tables_to_merge | 待合并的非空表列表 |
[in] | key_cols | 用于比较条件的 left_cols 和 right_cols 索引 |
[in] | column_order | 由 key_cols 索引的列的排序顺序类型 |
[in] | null_precedence | 指示索引列 (key_cols) 中 null 值相对于非 null 值的顺序的数组 |
stream | 用于设备内存操作和内核启动的 CUDA 流 | |
mr | 用于分配返回表的设备内存的设备内存资源 |