开发者社区> 问答> 正文

请教一个范围查询的问题

表结构

CREATE TABLE IF NOT EXISTS  api_stats (
    app_name                    text,               -- 目标应用
   
    -- 被其它应用访问数据
    count                       int,                -- 被访问次数
    err_count                   int,                -- 被访问错误数
    duration                    int,                -- 被访问总耗时
    max_duration                int,                -- 最大访问耗时
    min_duration                int,                -- 最小访问耗时
    satisfaction                int,               -- 满意
    tolerate                    int,                -- 可容忍
    api                         text,               -- 目标应用被访问的api
    input_date                  bigint,
    PRIMARY KEY (app_name, api, input_date)
) WITH gc_grace_seconds = 10800  AND  default_time_to_live = 2592000;

CREATE CUSTOM INDEX IF NOT EXISTS ON api_stats (input_date) 
    USING 'org.apache.cassandra.index.sasi.SASIIndex' 
    WITH OPTIONS = {'mode': 'SPARSE'};

查询语句

select * from api_stats where app_name='tsp' and input_date> 1560215045 and input_date<1560474245;

问题:有时候可以查到,有时候查不到。

展开
收起
小文文文 2019-06-14 14:37:01 118173 0
4 条回答
写回答
取消 提交回答
  • 22

    2022-04-17 09:46:20
    赞同 展开评论 打赏
  • 如果你是固定的查询条件,那可能查询结果是一样的,触发你的SQL落到后端,负载均衡到不同的地方,才有可能结果不一致

    2021-10-12 15:27:33
    赞同 展开评论 打赏
  • 不怕别人有钱,就怕他比你有钱还比你努力&hellip;&hellip;

    有两种情况 1.看看你的数据库的隔离级别,是不是未提交可读,如果是这种那有可能是读取了未提交的数据,最后对方回滚了。 2.别人在你查看的时候删除了。

    如果你用的是Cassandra 数据库的话,那我就不知道了,没有用过。

    2019-11-28 18:11:14
    赞同 1 展开评论 打赏
  • 迎接真正的AI时代!

    除非你的表数据在变动

    2019-08-06 12:25:39
    赞同 展开评论 打赏
问答分类:
问答地址:
问答排行榜
最热
最新

相关电子书

更多
低代码开发师(初级)实战教程 立即下载
冬季实战营第三期:MySQL数据库进阶实战 立即下载
阿里巴巴DevOps 最佳实践手册 立即下载