`SELECT ... WHERE match(key, '^prefix...')`
should use index similarly to
`SELECT ... WHERE key LIKE 'prefix%'`
if (!out_value.isNull())
                    out_type = removeNullable(out_type);
                return true;
            }
            else if (block_with_constants.has(column_name) && isColumnConst(*block_with_constants.getByName(column_name).column))
            {
                
                const auto & expr_info = block_with_constants.getByName(column_name);
                out_value = (*expr_info.column)[0];
                out_type = expr_info.type;
                if (!out_value.isNull())
                    out_type = removeNullable(out_type);
                return true;
            }
        }
        else
        {
            if (dag->column && isColumnConst(*dag->column))
            {
                out_value = (*dag->column)[0];
                out_type = dag->result_type;
                if (!out_value.isNull())
                    out_type = removeNullable(out_type);
                return true;
            }
        }
        return false;
    }
    ConstSetPtr tryGetPreparedSet(