```sql
select 1 from numbers(10) intersect select 1 from numbers(10)

SELECT 1
FROM numbers(10)
INTERSECT
SELECT 1
FROM numbers(10)

Query id: 9f2d11c5-269c-41dc-9b4c-8f1423aafcc7

┌─1─┐
│ 1 │
│ 1 │
│ 1 │
│ 1 │
│ 1 │
│ 1 │
│ 1 │
│ 1 │
└───┘

8 rows in set. Elapsed: 0.002 sec. 
```
{
        StringRef key(chars + offsets[row - 1], offsets[row] - offsets[row - 1] - 1);
        if constexpr (place_string_to_arena)
        {
            return ArenaKeyHolder{key, pool};
        }
        else
        {
            return key;
        }
    }
protected:
    friend class columns_hashing_impl::HashMethodBase<Self, Value, Mapped, use_cache>;
};
template <typename Value, typename Mapped, bool place_string_to_arena = true, bool use_cache = true, bool need_offset = false>
struct HashMethodFixedString
    : public columns_hashing_impl::
          HashMethodBase<HashMethodFixedString<Value, Mapped, place_string_to_arena, use_cache, need_offset>, Value, Mapped, use_cache, need_offset>
{
    using Self = HashMethodFixedString<Value, Mapped, place_string_to_arena, use_cache, need_offset>;
    using Base = columns_hashing_impl::HashMethodBase<Self, Value, Mapped, use_cache, need_offset>;
    size_t n;
    const ColumnFixedString::Chars * chars;
    HashMethodFixedString(const ColumnRawPtrs & key_columns, const Sizes & , const HashMethodContextPtr &)