Details
-
Bug
-
Status: Closed
-
Major
-
Resolution: Fixed
-
1.34.0
Description
We now have one CONCAT_FUNCTION which is enabled in MySQL, Postgresql, BigQuery, it always returns NULL when any of the arguments is NULL, and it accepts at least 2 arguments.
The following table describes how different database products define CONCAT function:
DB Product | Argument type in CONCAT | Argument num in CONCAT | Result |
---|---|---|---|
MySQL | string | at least 1 | returns null if any argument is null, otherwise return string |
BigQuery | string | at least 1 | returns null if any argument is null, otherwise return string |
Postgresql | any(cast to string) | at least 1 | always return string, null is treated as empty string |
MSSQL | string | 2 ~ 254 | always return string, null is treated as empty string |
For MySQL and BigQuery, we can reuse the current CONCAT_FUNCTION(but need to change the accepted argument number). We also need another CONCAT function for Postgresql and MSSQL that treats NULL as empty String. And they both accept at least 1 argument.
Attachments
Issue Links
- is related to
-
CALCITE-5741 Add CONCAT_WS function (enabled in MSSQL, MySQL, Postgres libraries)
- Closed
- links to