You have to provide the following information whenever possible.

**Describe the bug**

When use chinese as field name for nested type and query:

````
SELECT * from table array join `xxxx`;
````

it will raise error:

No columns in nested table xxx

**Does it reproduce on recent release?**

ClickHouse server version 21.3.5 revision 54447.

**How to reproduce**

1. create table

````
CREATE TABLE tmp.test1 (`id` String, `products` Nested (`产品` Array(String), `销量` Array(Int32))) ENGINE = ReplacingMergeTree ORDER BY id
````

2.  query

````
SELECT * FROM tmp.test2 array join products;
````

Error：

````
Received exception from server (version 21.3.5):
Code: 208. DB::Exception: Received from localhost:9000. DB::Exception: No columns in nested table products. 
````


**Additional Information**

I've tried using english character as field name, and it works.
{
    std::unordered_map<String, NamesAndTypesList> nested;
    for (const auto & name_type : names_and_types)
    {
        const DataTypeArray * type_arr = typeid_cast<const DataTypeArray *>(name_type.type.get());
        
        if (!isNested(name_type.type) && type_arr)
        {
            auto split = splitName(name_type.name);
            if (!split.second.empty())
                nested[split.first].emplace_back(split.second, type_arr->getNestedType());
        }
    }
    std::map<String, DataTypePtr> nested_types;
    for (const auto & [name, elems] : nested)
        nested_types.emplace(name, createNested(elems.getTypes(), elems.getNames()));
    return nested_types;
}
}
NamesAndTypesList collect(const NamesAndTypesList & names_and_types)