Cassandra 使用 IN 运算符在聚类列中更新和删除

2024-03-10

这是我的桌子

CREATE TABLE quorum.omg (
id int,
a int,
b text,
c text,
PRIMARY KEY ((id, a), b)
) WITH CLUSTERING ORDER BY (b DESC)

当我使用 IN 运算符执行 select 语句时,它对于最后一个分区键和最后一个集群键效果很好

SELECT * FROM  omg WHERE id=1 AND a IN ( 1,2) AND b IN ( 'a','b' ) ;

 id | a | b | c
----+---+---+----
  1 | 1 | b | hi
  1 | 2 | a | hi

但是当我更新和删除时,它会抛出这样的错误

UPDATE omg SET c = 'lalala' WHERE id=1 AND a IN ( 1,2) AND b IN ( 'a','b' ) ;
InvalidRequest: code=2200 [Invalid query] message="Invalid operator IN for PRIMARY KEY part b"

DELETE from omg  WHERE id=1 AND a IN ( 1,2) AND b IN ( 'a','b' ) ;
InvalidRequest: code=2200 [Invalid query] message="Invalid operator IN for  PRIMARY KEY part b"

我的错误是什么?提前致谢。


来自关于 UPDATE 的 DataStax 文档(http://docs.datastax.com/en/cql/3.1/cql/cql_reference/update_r.html http://docs.datastax.com/en/cql/3.1/cql/cql_reference/update_r.html):

仅分区键的最后一列支持 IN 关系。

您的最后一个分区键是a,但您正在尝试在集群键上使用它b。尝试在 WHERE 子句中使用特定的完整主键进行 UPDATE/DELETE。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Cassandra 使用 IN 运算符在聚类列中更新和删除 的相关文章

随机推荐

  • Carbon.php 第 425 行中的 Laravel InvalidArgumentException:使用 SQL 数据库跟踪数据

    我正在更新我的laravel 5 2从 MYSQL 到 SQL 数据库的应用程序 我一直面临着这个异常之后的碳日期格式问题 InvalidArgumentException in Carbon php line 425 Trailing d
  • 如何从 Intellij IDEA 访问内存中的 h2 数据库

    在 Spring Boot 项目中 我尝试从 IDE 查看内存中的表 如何从 Intellij IDEA 访问内存中的 h2 数据库 这是我的一个片段应用程序 yml h2 datasource url jdbc h2 mem mydb u
  • 使用 Mockito 检查多个参数的一致性

    我正在使用 Mockito 来模拟一个类 该类的方法如下所示 setFoo int offset float floats 我希望能够验证数组中的值 floats 等于 在给定容差范围内 预期值数组中的值 问题是我想检查的内容floats从
  • 如何对 Matlab 语言进行写保护?

    Matlab 允许您覆盖内置函数而无需发出警告 例如 我重写了该函数max 有一个变量 但 Matlab 没有提醒我这一点 仅在稍后调用该函数时才会抛出错误 并且不能帮助您查看实际问题 min 0 max 10 x linspace min
  • 表示 DAG(有向无环图)

    我需要将依赖项存储在 DAG 中 我们正在非常细粒度地 制定新的学校课程 我们使用的是 Rails 3 注意事项 宽大于深 很大 我估计每个节点有 5 10 个链接 随着系统的增长 这个值将会增加 读多写少 most common are
  • 如何在 XNA 中暂停重绘?

    我制作了一个 XNA 图像查看器 但它总是重新绘制场景 即使它没有改变 而且它让我的上网本烧得很厉害 所以我希望它在没有任何变化时暂停绘制 将帧速率降低到 1 是保持凉爽的一种方法 但会导致输出滞后 如何在没有输入的情况下防止重绘 这个问题
  • 如何更改 JFreeChart 的大小

    我添加了一个JFreeChart to a JPanel 用一个BorderLayout 并且它是huge 我可以做些什么来让它变小吗 public void generateChart DefaultCategoryDataset dat
  • 这个Handler类应该是静态的,否则可能会发生泄漏:AsyncQueryHandler

    处理程序引用泄漏 由于此处理程序被声明为内部类 因此可能会阻止外部类被垃圾收集 如果 Handler 在主线程以外的线程中使用 Looper 或 MessageQueue 则没有问题 如果 Handler 使用主线程的 Looper 或 M
  • 如何对具有多个值的多个列求和

    我正在寻找以下问题的解决方案 进入用户表并查找在网站上列出了项目的用户 在这个用户表中 没有关于拍卖的列 相反 它通过键连接到帐户表 在帐户中 此列称为用户 从这些 ID 已列出拍卖物品的用户 中 我需要找到他们的帐户余额 这也在账户表中
  • 将 jdouble 转换为 c 类型的 double

    我怎样才能转换jdoublejava类型变量为doublec 类型的变量 你不必这样做 它只是一个 typedef 如下所示 typedef double jdouble 所以一旦你有了一个 就不需要转换jdouble你可以把它当作doub
  • 是否使用drawRect(什么时候应该使用drawRect/Core Graphics vs 子视图/图像,为什么?)

    为了澄清这个问题的目的 我知道如何使用子视图和使用drawRect创建复杂的视图 我试图完全理解何时以及为何使用其中一种而不是另一种 我也明白提前优化那么多并在进行任何分析之前以更困难的方式做一些事情是没有意义的 考虑到我对这两种方法都很满
  • 为什么CSS3中有-moz-XXX和-webkit-XXX?

    我在 CSS3 中最讨厌的一点是 你总是应该使用两个属性来实现一种效果 我觉得这样不专业 加大CSS大小 例如 他们为什么不团结起来 webkit border radius and moz border radius in border
  • ValueTypes 如何从 Object (ReferenceType) 派生并且仍然是 ValueTypes?

    C 不允许从类派生结构 但所有 ValueType 都从 Object 派生 这种区别是在哪里做出的呢 CLR 如何处理这个问题 C 不允许从类派生结构 你的说法不正确 因此你感到困惑 C does允许结构从类派生 所有结构都派生自同一个类
  • VS 2015中的类库(包)在哪里?

    我正在尝试将类库 包 添加到我的 ASP NET MVC 5 项目中 但由于某种原因我找不到该选项 我是否必须安装其他依赖项才能获得该选项 它现在称为 类库 NET Core
  • 重命名文件源

    我一直在从平面文件源开发 SSIS 包 该文件每天都会出现 文件名具有日期时间指示 如下所示 文件名 20190509042908 txt 我想知道如何才能度过约会部分 我希望包动态读取文件 但它应该在没有最后 6 位数字的情况下通过 我只
  • 使用 MinGW-w64 编译 32 位架构

    我已经安装了 MinGW w64 来编译为 64 位 但看来我必须安装两个单独版本的 MinGW w64 才能获得对 32 位的支持 我尝试过 使用批处理文件和 powershell 脚本等等 但最终效果不是很好 似乎有 multilib
  • Gradle 构建中 dexOptions 中 jumboMode 的用途是什么?

    根据这个帖子 https stackoverflow com a 24224385 1176435它允许 dex 文件中包含更多数量的字符串 但我不太明白它的含义以及对构建的影响 Jumbo 模式与可以引用的字符串数量有关 一个 DEX 文
  • 从 IndexedSeq[DataFrame] 转换为 DataFrame?

    新手问题 我尝试向现有 DataFrame 添加列 我正在使用 Spark 1 4 1 import sqlContext implicits case class Test rule Int val test sc parallelize
  • 从数据框中删除特殊字符和字母数字的简单方法

    我有一个大型数据集 其中有 x 行和 y 列 其中一列为单词和一些不需要的数据 不需要的数据没有特定的模式 因此我发现很难将其从数据框中删除 nonhashtag want better than Dhabi United Arab Emi
  • Cassandra 使用 IN 运算符在聚类列中更新和删除

    这是我的桌子 CREATE TABLE quorum omg id int a int b text c text PRIMARY KEY id a b WITH CLUSTERING ORDER BY b DESC 当我使用 IN 运算符