加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > Java > 正文

用于基于maxTimeuuid和minTimeuuid的查询的Java API

发布时间:2020-12-15 04:15:10 所属栏目:Java 来源:网络整理
导读:使用maxTimeuuid和minTimeuuid的查询的 Java API是什么?我在QueryBuilder或其他任何地方找不到任何内容.我正在使用DataStax客户端 artifactIdcassandra-driver-core/artifactId version1.0.3/version 表“a”有2列: 1. String类型的id 2. TimeUuid类型的LM
使用maxTimeuuid和minTimeuuid的查询的 Java API是什么?我在QueryBuilder或其他任何地方找不到任何内容.我正在使用DataStax客户端

<artifactId>cassandra-driver-core</artifactId>
        <version>1.0.3</version>

表“a”有2列:
1. String类型的id
2. TimeUuid类型的LMD

这就是我正在做的事情,似乎并不正确,当然也行不通

Query q = QueryBuilder
    .select()
    .all()
    .from("test","a")
    .where().and(QueryBuilder.gt("LMD","minTimeUUid('2013-11-03 14:33:50')"))
    .and(QueryBuilder.lt("LMD","maxTimeUUId('2013-11-03 14:45:50')"));

任何指针都非常感谢

谢谢

解决方法

您需要使用 utils.UUIDs实用程序类从时间戳以编程方式生成最大/最小TimeUUID,例如,

final UUID min = UUIDs.startOf(lowerTimeStamp);
final UUID max = UUIDs.endOf(upperTimeStamp);
Query q = QueryBuilder
  .select()
  .all()
  .from("test","a")
  .where(QueryBuilder.gt("LMD",min))
  .and(QueryBuilder.lt("LMD",max));

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读