【问题标题】:Condition on a map key in update using datastax cassandra driver使用 datastax cassandra 驱动程序更新地图键的条件
【发布时间】:2017-12-08 17:23:27
【问题描述】:

我想创建一个类似的查询

UPDATE foo set map_clm['bar'] = 'biz' where id = 7 if map_clm['boo'] = 'bang';

使用 Datastax 的 cassandra 的 java 驱动程序的 QueryBuilder。我可以使用QueryBuilder.put("map_clm", "bar", "biz") 之类的东西创建分配,但我一直在为 IF 条件map_clm['boo'] = 'bang' 创建一个子句。有什么办法吗?

【问题讨论】:

    标签: java cassandra datastax-java-driver


    【解决方案1】:

    恕我直言,最直接的方法是使用 raw 函数并将您的 if 条件放入其中。但是,如果您不使用绑定,则需要小心转义参数。

    【讨论】:

    • QueryBuilder 在查询字符串中使用?,并在 CQL 帧中为字符串发送未转义的数据,为时间戳列发送纪元时间。我想要那个。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2016-02-27
    • 2017-01-20
    • 2016-05-18
    • 2019-01-31
    • 1970-01-01
    • 1970-01-01
    • 2018-02-15
    相关资源
    最近更新 更多