当前位置: 首页 > 知识库问答 >
问题:

在cassandra中对1列运行大容量更新查询

姚煜
2023-03-14
UPDATE TABLE_NAME SET COL1=NULL WHERE PRIMARY_KEY IN(SELECT PRIMARY_KEY FROM TABLE_NAME );

P.S-列不是主键或群集键。

共有1个答案

段兴为
2023-03-14

除了遍历每一行并更新值之外,通过CQL确实没有办法做到这一点。

然而,如果你觉得有冒险精神,可能会有一种方法来做到这一点。

您可以使用cqlsh中的COPY将表中的数据输出到文件中。使用像sed这样的工具,您可以修改该文本文件以更改列,然后将该文件导入回Cassandra。

 类似资料:
  • SyntaxException:第1:34行在输入'(')处没有可行的替代方案(UPDATE mytable SET mycolumn=cast 我看到了关于cast函数的文档,对于任何其他类型,都没有在输出类型下列出。 https://docs.datastax.com/en/dse/5.1/cql/cql/cql_reference/refcqlfunction.html#refcqlfunc

  • 我是playframework应用程序开发人员。我使用jpa中的createNativeQuery方法通过select查询从表中提取值。我需要使用更新查询。我要做的是什么,以及该方法的返回类型是什么。请任何人帮助我。提前谢谢。如果我这样使用,它会显示错误。。 Query query=JPA.em()。createNativeQuery(" update truck set flag = ' YES

  • 我在用Cassandra存储股票信息。每个“行”都有一些基字段,如:时间、价格、关闭、打开、低、高等。在这些字段的顶部,我有一个浮动类型的值列表,其中包含一些内部系统计算。 对象的示例:

  • (注意:如果我在这里使用关系数据库术语,很抱歉。) 假设我有十个客户端连接到一个数据库。该数据库的持续吞吐量约为每秒1k次更新。显然,对于最终用户来说,每秒向web浏览器发送1k个更新(比如每秒1MB的数据更改)并不是一个好的体验。Firebase是否可以控制客户端在开始限制数据之前可以“接受”的数据量?我理解它可能会批量请求,但我的观点是,谷歌接受数据/更新的速度比浏览器更快(可能是通过弱互联网

  • 但是,当我尝试在where子句中使用非主键列进行查询时,1000次查询几乎花了2个小时。 我知道,没有主键是一个很大的缺点,但我们可能会有这样的情况。 > 我试图查看是否可以使用辅助索引,但它们似乎仅限于一列。

  • 像这样,我有两个线程。SleepRunner线程在列表中添加一些随机数,然后将标志更改为true并Hibernate。主线程等待SleepRunner线程,直到SleepRunner对象中的标志从false变为true,然后主线程将中断SleepRunner线程,程序将结束。 但问题是,当主线程中的当循环没有正文代码时,变量“运行者”在循环内没有更新,换句话说,当睡眠运行者线程将标志从假改为真后,