v.22.12New Feature

Added concatWithSeparator and concat_ws functions for Spark SQL compatibility

Added function concatWithSeparator and concat_ws as an alias for Spark SQL compatibility. A function concatWithSeparatorAssumeInjective added as a variant to enable GROUP BY optimization, similarly to concatAssumeInjective. #43749 (李扬).
Added the functions concatWithSeparator and its alias concat_ws (for Spark SQL compatibility) to concatenate strings with a separator. Additionally, introduced concatWithSeparatorAssumeInjective to enable GROUP BY optimization.

Why it matters

These functions solve the need to concatenate multiple string values with a specified separator, improving compatibility with Spark SQL's concat_ws function. The variant concatWithSeparatorAssumeInjective allows users to optimize query performance by enabling efficient grouping operations when the concatenation is injective.

How to use it

Use concatWithSeparator(sep, ...strings) or concat_ws(sep, ...strings) to concatenate strings using a separator. To enable GROUP BY optimizations, use concatWithSeparatorAssumeInjective(sep, ...strings) similarly.