【问题标题】:Cassandra Query Token function gives No viable alternative at input errorCassandra 查询令牌功能在输入错误时没有可行的替代方案
【发布时间】:2020-08-10 13:31:38
【问题描述】:

我正在尝试使用 datastax python cassandra 连接器针对 Cassandra 表运行以下查询。我收到“输入 'TOKEN (...ECT TOKEN...) 没有可行的替代方案”错误。查询中有什么问题吗?请帮助我,因为我是 Cassandra 的新手。

statement = SimpleStatement("SELECT TOKEN(doc_id), doc_id FROM <ks>.<tablename> WHERE TOKEN(doc_id)>-8939575974182321168 AND TOKEN(doc_id)<8655779911509866528", fetch_size=30)
rows = session.execute(statement)

【问题讨论】:

  • 查询本身看起来是正确的。 doc_id 是您的分区键吗?它是唯一的一部分吗?除非我知道你的表的分区键是什么,否则很难说出错误的原因。
  • 感谢您的回复。从列部分中删除 TOKEN(doc_id) 后它起作用了,但 WHERE 条件保持不变。 SELECT doc_id FROM . WHERE TOKEN(doc_id)>-8939575974182321168 AND TOKEN(doc_id)
  • 能不能通过执行DESCRIBE TABLE &lt;ks&gt;.&lt;tablename&gt;@sureshbabu提供表结构

标签: python cassandra datastax


【解决方案1】:

感谢您的回复。从列部分中删除 TOKEN(doc_id) 后它起作用了,但 WHERE 条件保持不变。从中选择 doc_id。 WHERE TOKEN(doc_id)>-8939575974182321168 AND TOKEN(doc_id)

【讨论】:

    猜你喜欢
    • 2017-01-07
    • 1970-01-01
    • 2020-05-06
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-11-14
    • 1970-01-01
    • 2017-09-15
    相关资源
    最近更新 更多