[Feature](array) Support array<decimalv3> data type (#16640)

This commit is contained in:
abmdocrt
2023-03-13 10:48:13 +08:00
committed by GitHub
parent 3a6c0e7867
commit 55c42da511
24 changed files with 576 additions and 90 deletions

View File

@ -20,6 +20,7 @@
#include "vec/columns/column.h"
#include "vec/columns/column_array.h"
#include "vec/columns/column_const.h"
#include "vec/columns/columns_number.h"
#include "vec/data_types/data_type.h"
#include "vec/data_types/data_type_array.h"
#include "vec/data_types/data_type_number.h"
@ -265,6 +266,15 @@ private:
} else if (check_column<ColumnFloat64>(right_column)) {
return _execute_number<NestedColumnType, ColumnFloat64>(offsets, nested_column,
right_column, nested_null_map);
} else if (check_column<ColumnDecimal32>(right_column)) {
return _execute_number<NestedColumnType, ColumnDecimal32>(
offsets, nested_column, right_column, nested_null_map);
} else if (check_column<ColumnDecimal64>(right_column)) {
return _execute_number<NestedColumnType, ColumnDecimal64>(
offsets, nested_column, right_column, nested_null_map);
} else if (check_column<ColumnDecimal128I>(right_column)) {
return _execute_number<NestedColumnType, ColumnDecimal128I>(
offsets, nested_column, right_column, nested_null_map);
} else if (check_column<ColumnDecimal128>(right_column)) {
return _execute_number<NestedColumnType, ColumnDecimal128>(
offsets, nested_column, right_column, nested_null_map);
@ -326,6 +336,15 @@ private:
} else if (check_column<ColumnFloat64>(*nested_column)) {
res = _execute_number_expanded<ColumnFloat64>(offsets, *nested_column,
*right_column, nested_null_map);
} else if (check_column<ColumnDecimal32>(*nested_column)) {
res = _execute_number_expanded<ColumnDecimal32>(offsets, *nested_column,
*right_column, nested_null_map);
} else if (check_column<ColumnDecimal64>(*nested_column)) {
res = _execute_number_expanded<ColumnDecimal64>(offsets, *nested_column,
*right_column, nested_null_map);
} else if (check_column<ColumnDecimal128I>(*nested_column)) {
res = _execute_number_expanded<ColumnDecimal128I>(offsets, *nested_column,
*right_column, nested_null_map);
} else if (check_column<ColumnDecimal128>(*nested_column)) {
res = _execute_number_expanded<ColumnDecimal128>(offsets, *nested_column,
*right_column, nested_null_map);