James Duong created CALCITE-6308:
------------------------------------
Summary: Add PostgreSQL functions up to PostgreSQL v14
Key: CALCITE-6308
URL: https://issues.apache.org/jira/browse/CALCITE-6308
Project: Calcite
Issue Type: Improvement
Components: core
Reporter: James Duong
Support the following PostgreSQL functions for parity with PostgreSQL 14:
* REGEXP_LIKE
** The Spark version of this is being implemented in CALCITE-6278
** The PostgreSQL version requires supporting a 3-arg version that takes in
flags.
* REGEXP_REPLACE
** There is an existing implementation.
** PostgreSQL requires supporting an optional extra flags argument
* DATE_PART
** PostgreSQL and Redshift let the date_part parameter be a string instead of
a just an enum-like identifier (eg DATE_PART('year', ...) and DATE_PART(year,
...) are both supported.
** SQL Server does not support using a string here.
* LOG
** We have the BigQuery implementation which has a 1-arg overload that uses
base e (ln), and a 2-arg overload which is LOG(value, base)
** PostgreSQL's 1-arg version uses base 10 and the 2-arg overload has the
order reversed – LOG(base, value)
* POW
** Our existing implementation always returns double.
** PostgreSQL allows returning a numeric instead of a double when inputs are
numeric. Not sure if this makes sense though.
* RANDOM
** This is an alias for RAND(), except it should not support passing in a seed.
* TO_CHAR
* TO_DATE
* TO_TIMESTAMP
** PostgreSQL supports different format strings than the version we have
implemented.
--
This message was sent by Atlassian Jira
(v8.20.10#820010)