```
SET compile_expressions = 1
SELECT GREATEST(2,0)
```

return false;
                auto col_res = ColumnFixedString::create(col_left->getN());
                auto & out_chars = col_res->getChars();
                out_chars.resize(col_left->getN());
                OpImpl::vectorVector(col_left->getChars().data(),
                                      col_right->getChars().data(),
                                      out_chars.data(),
                                      out_chars.size());
                block.getByPosition(result).column = ColumnConst::create(std::move(col_res), block.rows());
                return true;
            }
        }
        bool is_left_column_const = checkAndGetColumnConst<ColumnFixedString>(col_left_raw) != nullptr;
        bool is_right_column_const = checkAndGetColumnConst<ColumnFixedString>(col_right_raw) != nullptr;
        auto col_left = is_left_column_const
                        ? checkAndGetColumn<ColumnFixedString>(checkAndGetColumnConst<ColumnFixedString>(col_left_raw)->getDataColumn())
                        : checkAndGetColumn<ColumnFixedString>(col_left_raw);
        auto col_right = is_right_column_const
                        ? checkAndGetColumn<ColumnFixedString>(checkAndGetColumnConst<ColumnFixedString>(col_right_raw)->getDataColumn())
                        : checkAndGetColumn<ColumnFixedString>(col_right_raw);
        if (col_left && col_right)
        {
            if (col_left->getN() != col_right->getN())
                return false;
            auto col_res = ColumnFixedString::create(col_left->getN());
            auto & out_chars = col_res->getChars();
            out_chars.resize((is_right_column_const ? col_left->size() : col_right->size()) * col_left->getN());
            if (!is_left_column_const && !is_right_column_const)
            {
                OpImpl::vectorVector(