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

如何从SQL查询结果中筛选出最少使用的支付方式?

解决最少使用支付方式的SQL查询问题

你的子查询报错原因是:使用聚合函数MIN(Occ)时,Payment列既未被包含在GROUP BY子句中,也未被聚合函数处理,违反了SQL的聚合规则。

以下是两种可行的解决方案:

方法一:排序后取第一条

直接统计各支付方式的使用次数,按次数升序排序后取第一条记录:

SELECT Payment, COUNT(Payment) AS Frequency
FROM SALES
GROUP BY Payment
ORDER BY Frequency ASC
LIMIT 1;

这种方式简单高效,适合只需要单个最少使用支付方式的场景。

方法二:匹配最小使用次数

先通过子查询获取所有支付方式中的最小使用次数,再筛选出对应支付方式:

SELECT Payment, COUNT(Payment) AS Frequency
FROM SALES
GROUP BY Payment
HAVING COUNT(Payment) = (
    SELECT MIN(Occ)
    FROM (
        SELECT COUNT(Payment) AS Occ
        FROM SALES
        GROUP BY Payment
    ) AS SubQuery
);

如果存在多个支付方式使用次数相同且均为最小值,该方法会返回所有符合条件的记录。

以上两种方法都能得到你期望的Paypal | 123的结果。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.13 20:30:49