首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在Cassandra NoSQL中有按列查询的方法吗?

在Cassandra NoSQL中有按列查询的方法吗?
EN

Stack Overflow用户
提问于 2022-05-24 00:54:31
回答 1查看 60关注 0票数 1

表创建尝试:

代码语言:javascript
复制
CREATE TABLE users_v1 (
guid uuid PRIMARY KEY,
notice text,
first_name text,
last_name text,
obsidian text,
starlight text,
bids text,
apps text,
FAMILY f1 (first_name, last_name),
FAMILY f2 (obsidian, starlight),
FAMILY f3 (bids, apps)
);

我尝试过基于f*进行查询,但我似乎无法得到返回或编写的(first_name, last_name)。我肯定我错过了一个重要的概念。

  1. 的主要思想是,任何用户对象都有3个列系列,可以随时间的推移进行扩展。
  2. 的另一个想法是,任何查询是否选择或插入都应该能够只调用家族,例如f2,并且只更新该家族中的列。

这能和家人一起做吗?或者,还有其他方法可以利用宽行、动态列或我缺少的NoSQL特性吗?

我对数据库很陌生,所以5年前的解释很受欢迎。我已经考虑过在SQL中使用表联接,但考虑到对象本身将被扩展,我不认为它将可靠地扩展。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2022-05-24 06:54:27

现代卡桑德拉并不是按列族来运作的--这是最初的设计,最后在卡桑德拉4.0中被废弃了。

如果您只想更新特定的列,只需指定它们(加上主键)。Cassandra不会用null或类似的东西更新其余部分--默认情况下,Cassandra由单个单元格(列值)操作,而不是整行。对于SELECT -如果您只想获得特定的列,请在SELECT语句中指定它们。

我建议你获得第三版的“卡桑德拉:权威指南”-它可能仍然可以从DataStax的网站。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/72356168

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档