**Describe the bug**

"Not found column ... in block" error, when join on alias column.

**How to reproduce**

```sql
CREATE TABLE a (
    id UInt32,
    value UInt32,
    id_alias UInt32 ALIAS id    
) ENGINE = MergeTree() ORDER BY id;

CREATE TABLE b (
    id UInt32,
    value UInt32
) ENGINE = MergeTree() ORDER BY id;

INSERT INTO a VALUES (1, 1), (2, 2), (3, 3);
INSERT INTO b VALUES (1, 4), (2, 5), (3, 6);

SELECT * FROM a JOIN b ON a.id_alias = b.id;
```

**Expected behavior**

In version 21.5.9.4 result is:

id | value | b.id | b.value
-- | -------- | ----- | ----------
1 |  1 | 1 | 4 
2 | 2 | 2 | 5 
3 | 3 | 3 | 6 

**Error message and/or stacktrace**

In version 21.7.5.29 result is:
```
SQL Error [10]: ClickHouse exception, code: 10, host: 127.0.0.1, port: 14343; Code: 10, e.displayText() = DB::Exception: Not found column id_alias in block. There are only columns: id, value (version 21.7.5.29 (official build))
```
{
        if (select_query->arrayJoinExpressionList().first->children.empty())
            throw DB::Exception("ARRAY JOIN requires an argument", ErrorCodes::NUMBER_OF_ARGUMENTS_DOESNT_MATCH);
        ASTPtr expr = select_query->arrayJoinExpressionList().first->children.at(0);
        String source_name = expr->getColumnName();
        String result_name = expr->getAliasOrColumnName();
        
        if (!expr->as<ASTIdentifier>() || source_columns_set.count(source_name))
        {
            result.array_join_result_to_source[result_name] = source_name;
        }
        else 
        {
            bool found = false;
            for (const auto & column : source_columns)
            {
                auto split = Nested::splitName(column.name);
                if (split.first == source_name && !split.second.empty())
                {
                    result.array_join_result_to_source[Nested::concatenateName(result_name, split.second)] = column.name;
                    found = true;
                    break;
                }
            }
            if (!found)
                throw Exception("No columns in nested table " + source_name, ErrorCodes::EMPTY_NESTED_TABLE);
        }
    }
}
void setJoinStrictness(ASTSelectQuery & select_query, JoinStrictness join_default_strictness, bool old_any, ASTTableJoin & out_table_join)