[BUG](date_trunc) fix date_trunc function only handle lower string (#22602)

fix date_trunc function only handle lower string
This commit is contained in:
zhangstar333
2023-08-05 12:53:13 +08:00
committed by GitHub
parent fe6bae2924
commit d3b50e3b2a
7 changed files with 310 additions and 58 deletions

View File

@ -423,10 +423,12 @@ private:
const StringRef& rdata, PaddedPODArray<ArgType>& res,
NullMap& null_map, size_t input_rows_count) {
res.resize(input_rows_count);
std::string lower_str(rdata.data, rdata.size);
std::transform(lower_str.begin(), lower_str.end(), lower_str.begin(),
[](unsigned char c) { return std::tolower(c); });
for (size_t i = 0; i < input_rows_count; ++i) {
auto dt = binary_cast<ArgType, DateValueType>(ldata[i]);
const char* str_data = rdata.data;
_execute_inner_loop(dt, str_data, res, null_map, i);
_execute_inner_loop(dt, lower_str.data(), res, null_map, i);
}
}
template <typename T>