v.24.2Experimental Feature

Implement Comparison Operator for Variant Values and Field Insertion, with Default Restrictions on Similar Variant Types

Implement comparison operator for Variant values and proper Field inserting into Variant column. Don't allow creating Variant type with similar variant types by default (allow uder a setting allow_suspicious_variant_types) Closes #59996. Closes #59850. #60198 (Kruglov Pavel).
Implemented comparison operators for Variant data type and improved how Fields are inserted into Variant columns. Added a new setting allow_suspicious_variant_types to control the creation of Variant types with similar underlying variant types.

Why it matters

This feature enables direct comparison operations on Variant values, enhancing functionality and usability of the Variant data type. It also ensures proper insertion of Field values into Variant columns, preventing unexpected behaviors. The setting allow_suspicious_variant_types helps avoid accidental creation of conflicting variant types unless explicitly allowed by the user, improving data integrity and schema clarity.

How to use it

Users can utilize comparison operators directly on Variant columns in their queries. To allow creation of Variant types with similar underlying types (which is restricted by default), enable the setting allow_suspicious_variant_types in the ClickHouse server configuration or per session.