You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@cassandra.apache.org by "Benjamin Lerer (JIRA)" <ji...@apache.org> on 2016/08/26 11:09:20 UTC

[jira] [Commented] (CASSANDRA-7461) operator functionality in CQL

    [ https://issues.apache.org/jira/browse/CASSANDRA-7461?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15438805#comment-15438805 ] 

Benjamin Lerer commented on CASSANDRA-7461:
-------------------------------------------

{quote}
something like {{((someType)?).bar}} looks cleaner than {{(someType)?.bar}} (even though they will be equivalent) 
{quote}

From a syntax point of view I do not think that they are equivalent. In {{((someType)?).bar}} the hint apply to the {{?}} but in {{(someType)?.bar}} the hint apply to the result of the expression which is {{?.bar}} (in a similar way to Java).

> operator functionality in CQL
> -----------------------------
>
>                 Key: CASSANDRA-7461
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-7461
>             Project: Cassandra
>          Issue Type: New Feature
>          Components: CQL
>            Reporter: Robert Stupp
>            Assignee: Benjamin Lerer
>              Labels: cql
>
> Intention: Allow operators in CQL
> Operators could be decimal arithmetics {{+ - * /}} or boolen arithmetics {{| & !}} or string 'arithmetics' {{+}}
> {{SELECT tab.label + ' = ' + tab.value FROM foo.tab}}
> {{SELECT * FROM tab WHERE tab.label + ' = ' + tab.value = 'foo = bar'}}
> as well as
> {{CREATE INDEX idx ON tab ( tab.tabel + '=' + tab.value )}}
> or
> {{CREATE INDEX idx ON tab (label) WHERE contains(tab.tabel, 'very-important-key')}}
> Operators could be mapped to UDFs like this:
> {{+}} mapped to UDF {{cstarstd::oper_plus(...)}}
> {{-}} mapped to UDF {{cstarstd::oper_minus(...)}}
> or handled directly via {{Cql.g}} in 'special' code



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)