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

SQL需求:筛选Lst_30仅为0的API记录(含重复ID处理逻辑)

解决SQL筛选:保留所有Lst_30值均不大于0的API(ID)记录

我来帮你搞定这个SQL问题!你的需求核心是:排除那些存在任意一条Lst_30>0的重复ID,只保留所有Lst_30值都≤0的ID及其对应记录,下面分两种场景给你实现方案:

场景1:返回符合条件的完整记录

用CTE(公共表表达式)先筛选出合格的ID,再关联原表获取完整数据,写法清晰易读:

WITH qualified_apis AS (
    -- 按ID分组,筛选出Lst_30最大值≤0的ID
    SELECT ID
    FROM your_table_name
    GROUP BY ID
    HAVING MAX(Lst_30) <= 0
)
-- 关联原表,取出这些合格ID的所有记录
SELECT t.*
FROM your_table_name t
INNER JOIN qualified_apis q ON t.ID = q.ID;

场景2:仅返回符合条件的ID

如果只需要得到合格的API(ID)列表,直接用分组+Having即可:

SELECT ID
FROM your_table_name
GROUP BY ID
HAVING MAX(Lst_30) <= 0;

逻辑解释

  • GROUP BY ID:把相同API的记录聚合成一组
  • HAVING MAX(Lst_30) <= 0:只保留组内Lst_30的最大值≤0的ID——这就确保了该ID的所有Lst_30都不会大于0(只要有一条>0,最大值就会>0,被排除)
  • 示例里的API 17031236100000所有Lst_30都是0,最大值为0,符合条件,会被保留;其他有Lst_30>0的重复ID都会被过滤掉。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.19 09:21:07