You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何从含success/fail标识的索引日志中筛选仅存失败记录的项目

筛选仅含失败记录的项目列表

核心逻辑

要找出从未出现过成功记录的项目,核心思路是:

  • 先定位所有有过成功记录的项目,将它们排除
  • 剩余的项目即为仅存在失败记录的目标对象

示例数据

DateUserStatus
Jan 01user1Fail
Jan 02User1Success
Jan 01User2Fail
Jan 02User2Fail

示例结果

User2

具体实现方式

1. SQL实现

如果数据存储在关系型数据库中,可使用以下查询语句:

SELECT DISTINCT User
FROM log_table
WHERE User NOT IN (
    SELECT DISTINCT User
    FROM log_table
    WHERE Status = 'Success'
);

2. Elasticsearch实现

如果数据存储在Elasticsearch索引中,可通过聚合查询实现:

{
  "size": 0,
  "aggs": {
    "all_users": {
      "terms": {
        "field": "User.keyword",
        "size": 1000
      },
      "aggs": {
        "has_success": {
          "filter": {
            "term": {
              "Status": "Success"
            }
          }
        },
        "only_fail": {
          "bucket_selector": {
            "buckets_path": {
              "success_count": "has_success._count"
            },
            "script": "params.success_count == 0"
          }
        }
      }
    }
  }
}

执行后,all_users聚合返回的结果就是仅含失败记录的项目列表。

内容的提问来源于stack exchange,提问作者Nada Nasser

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.03 08:30:51