public static ClickHouseDateTimeValue ofNull(ClickHouseValue ref, int scale, TimeZone tz) {
        return ref instanceof ClickHouseDateTimeValue
                ? (ClickHouseDateTimeValue) ((ClickHouseDateTimeValue) ref).set(null)
                : new ClickHouseDateTimeValue(null, scale, tz);
    }
Update given value to null or create a new instance if {@code ref} is null.

@param ref   object to update, could be null
@param scale scale, only used when {@code ref} is null
@param tz    time zone, null is treated as {@code UTC}
@return same object as {@code ref} or a new instance if it's null
clickhouse-data/src/main/java/com/clickhouse/data/value/ClickHouseDateTimeValue.java