You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@calcite.apache.org by "Chris Baynes (JIRA)" <ji...@apache.org> on 2017/05/16 12:58:04 UTC
[jira] [Updated] (CALCITE-1793) Allow RelBuilder to make calls to
EXTRACT
[ https://issues.apache.org/jira/browse/CALCITE-1793?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Chris Baynes updated CALCITE-1793:
----------------------------------
Description:
EXTRACT_DATE was originally intended to be an internal function, always created by translating a call to EXTRACT.
Currently this makes the EXTRACT_DATE function rather awkward to use:
{code}
SqlOperator op = new SqlSpecialOperator("EXTRACT_DATE", SqlKind.EXTRACT, 2, true, ReturnTypes.INTEGER, null, null);
builder.call(op, builder.getRexBuilder().makeFlag(TimeUnitRange.YEAR), builder.field(1, 0, "my_date"));
{code}
[~julianhyde] suggests calling EXTRACT directly and then have RelBuilder invoke a convertlet to translate into calls to EXTRACT_DATE or date-time arithmetic:
[http://mail-archives.apache.org/mod_mbox/calcite-dev/201705.mbox/%3CCAPSgeET9OVWkvGsGXAezqhqP3Zd2dmXxs0k-J92WZM32%2BMq3kw%40mail.gmail.com%3E]
was:
EXTRACT_DATE was originally intended
to be an internal function, always created by translating a call to
EXTRACT.
Currently this makes the EXTRACT_DATE function rather awkward to use:
{code}
SqlOperator op = new SqlSpecialOperator("EXTRACT_DATE", SqlKind.EXTRACT, 2, true, ReturnTypes.INTEGER, null, null);
builder.call(op, builder.getRexBuilder().makeFlag(TimeUnitRange.YEAR), builder.field(1, 0, "my_date"));
{code}
[~julianhyde] suggests calling EXTRACT directly and then have
RelBuilder invoke a convertlet to translate into calls to
EXTRACT_DATE or date-time arithmetic:
[http://mail-archives.apache.org/mod_mbox/calcite-dev/201705.mbox/%3CCAPSgeET9OVWkvGsGXAezqhqP3Zd2dmXxs0k-J92WZM32%2BMq3kw%40mail.gmail.com%3E]
> Allow RelBuilder to make calls to EXTRACT
> -----------------------------------------
>
> Key: CALCITE-1793
> URL: https://issues.apache.org/jira/browse/CALCITE-1793
> Project: Calcite
> Issue Type: Bug
> Components: core
> Affects Versions: 1.11.0, 1.12.0
> Reporter: Chris Baynes
> Assignee: Julian Hyde
> Priority: Minor
>
> EXTRACT_DATE was originally intended to be an internal function, always created by translating a call to EXTRACT.
> Currently this makes the EXTRACT_DATE function rather awkward to use:
> {code}
> SqlOperator op = new SqlSpecialOperator("EXTRACT_DATE", SqlKind.EXTRACT, 2, true, ReturnTypes.INTEGER, null, null);
> builder.call(op, builder.getRexBuilder().makeFlag(TimeUnitRange.YEAR), builder.field(1, 0, "my_date"));
> {code}
> [~julianhyde] suggests calling EXTRACT directly and then have RelBuilder invoke a convertlet to translate into calls to EXTRACT_DATE or date-time arithmetic:
> [http://mail-archives.apache.org/mod_mbox/calcite-dev/201705.mbox/%3CCAPSgeET9OVWkvGsGXAezqhqP3Zd2dmXxs0k-J92WZM32%2BMq3kw%40mail.gmail.com%3E]
--
This message was sent by Atlassian JIRA
(v6.3.15#6346)