[fix](storage)(vectorized) query get wrong result when read datetime type column (#8872)
This commit is contained in:
@ -231,13 +231,16 @@ void convert_col_to_pvalue(const ColumnPtr& column, const DataTypePtr& data_type
|
||||
PDateTime* date_time = arg->add_datetime_value();
|
||||
if constexpr (nullable) {
|
||||
if (!column->is_null_at(row_num)) {
|
||||
VecDateTimeValue v = VecDateTimeValue(column->get_int(row_num));
|
||||
VecDateTimeValue v =
|
||||
binary_cast<vectorized::Int64, vectorized::VecDateTimeValue>(
|
||||
column->get_int(row_num));
|
||||
date_time->set_day(v.day());
|
||||
date_time->set_month(v.month());
|
||||
date_time->set_year(v.year());
|
||||
}
|
||||
} else {
|
||||
VecDateTimeValue v = VecDateTimeValue(column->get_int(row_num));
|
||||
VecDateTimeValue v = binary_cast<vectorized::Int64, vectorized::VecDateTimeValue>(
|
||||
column->get_int(row_num));
|
||||
date_time->set_day(v.day());
|
||||
date_time->set_month(v.month());
|
||||
date_time->set_year(v.year());
|
||||
@ -252,7 +255,9 @@ void convert_col_to_pvalue(const ColumnPtr& column, const DataTypePtr& data_type
|
||||
PDateTime* date_time = arg->add_datetime_value();
|
||||
if constexpr (nullable) {
|
||||
if (!column->is_null_at(row_num)) {
|
||||
VecDateTimeValue v = VecDateTimeValue(column->get_int(row_num));
|
||||
VecDateTimeValue v =
|
||||
binary_cast<vectorized::Int64, vectorized::VecDateTimeValue>(
|
||||
column->get_int(row_num));
|
||||
date_time->set_day(v.day());
|
||||
date_time->set_month(v.month());
|
||||
date_time->set_year(v.year());
|
||||
@ -261,7 +266,8 @@ void convert_col_to_pvalue(const ColumnPtr& column, const DataTypePtr& data_type
|
||||
date_time->set_second(v.second());
|
||||
}
|
||||
} else {
|
||||
VecDateTimeValue v = VecDateTimeValue(column->get_int(row_num));
|
||||
VecDateTimeValue v = binary_cast<vectorized::Int64, vectorized::VecDateTimeValue>(
|
||||
column->get_int(row_num));
|
||||
date_time->set_day(v.day());
|
||||
date_time->set_month(v.month());
|
||||
date_time->set_year(v.year());
|
||||
|
||||
Reference in New Issue
Block a user