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

SQL查询:筛选至少有1个9999产品码且非9999产品码超10个的用户

查询需求说明

待查询数据表共包含3个字段:

  • ID:记录主键ID
  • UserID:用户唯一标识ID
  • ProductCodes:关联产品编码

表内示例数据如下:

IDUserIDProductCodes
1339999
24563051
34569999
44563051
4339999

需要筛选同时满足以下两个条件的用户:

  • 至少拥有1条ProductCodes = '9999'的记录
  • 所持有的ProductCodes <> '9999'的记录总数量大于10

参考SQL实现

假设数据表名为user_product_records,可直接使用如下聚合查询实现需求,单次扫描表即可完成筛选,查询效率更高:

SELECT UserID
FROM user_product_records
GROUP BY UserID
HAVING
  -- 校验存在9999产品编码记录
  SUM(CASE WHEN ProductCodes = '9999' THEN 1 ELSE 0 END) >= 1
  -- 校验非9999的记录数大于10
  AND SUM(CASE WHEN ProductCodes <> '9999' THEN 1 ELSE 0 END) > 10;

说明:在MySQL等支持布尔值隐式转数值的方言中,可以简化写法为SUM(ProductCodes = '9999') >= 1,逻辑完全一致。


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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.30 11:03:24