【问题标题】:CQL - can't do arithmetic operationsCQL - 不能进行算术运算
【发布时间】:2018-10-10 01:37:49
【问题描述】:

下午好,

我目前正在开始使用 Cassandra 和 CQL,但遇到了问题。 我做了一个非常简单的数据库,我想在列之间做一些算术运算(加法,乘法......)。当我尝试这样做时,我收到以下错误:

"no viable alternative at input '-' "

据我所知,Cassandra 长期不支持算术运算,但 official documentation 似乎另有说法。

所以我的问题是:我做错了吗?还是这些运算符仍然不受支持?

我正在使用 Cassandra 3.11.2 和 cqlsh 5.0.1。我的查询是

Select ProductName, NetIncome, ProductionCost, (NetIncome - ProductionCost) from globalsales.Rentability group by ProductName;

其中 NetIncome 和 ProductionCost 都是 int 类型的列。

【问题讨论】:

    标签: cassandra cql cassandra-4.0


    【解决方案1】:

    是的,那个文档写得有点过早。目前不支持将算术作为 CQL 的一部分。它包含在CASSANDRA-11935 下的JIRA 项目中。

    该票证将应用于 Cassandra 4.0 版本,该版本目前没有 ETA。

    编辑 20210824

    使用 Cassandra 4.0,现在可以在列之间进行算术运算。上面的查询现在应该可以工作了。

    > SELECT productname, netincome, productioncost, netincome - productioncost FROM rentability;
    
     productname         | netincome | productioncost | netincome - productioncost
    ---------------------+-----------+----------------+----------------------------
     Stihl 2018 Chainsaw |    625.95 |          82.14 |                    543.81
    
    (1 rows)
    

    【讨论】:

    猜你喜欢
    • 2018-02-18
    • 2016-03-13
    • 1970-01-01
    • 2011-05-07
    • 1970-01-01
    • 2014-10-02
    • 1970-01-01
    • 1970-01-01
    • 2021-05-26
    相关资源
    最近更新 更多