Kirill Tkalenko created IGNITE-29016:
----------------------------------------

             Summary: SQL Calcite: Support treating empty strings as NULL
                 Key: IGNITE-29016
                 URL: https://issues.apache.org/jira/browse/IGNITE-29016
             Project: Ignite
          Issue Type: Improvement
            Reporter: Kirill Tkalenko
            Assignee: Kirill Tkalenko


Some databases support treating zero-length character strings as {{{}NULL{}}}: 
Oracle does this by default, while Db2 and H2 provide it through Oracle 
compatibility modes. 
[Oracle|https://docs.oracle.com/en/database/oracle/oracle-database/18/sqlrf/Nulls.html],
 
[Db2|https://www.ibm.com/docs/en/db2/12.1.x?topic=compatability-varchar2-nvarchar2],
 [H2|https://h2database.github.io/html/features.html#compatibility_modes].

When enabled:
 * String literals, parameters and stored values {{''}} are treated as 
{{{}NULL{}}}.
 * Empty strings returned by expressions, built-in functions, UDFs and UDTFs 
become {{{}NULL{}}}.
 * Comparisons follow regular SQL {{NULL}} semantics.
 * A whitespace-only string such as {{' '}} remains unchanged.
 * Binary values and LOBs are not affected.

The existing behavior should remain when the option is disabled.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

Reply via email to