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

SQL如何统计同表中每个产品对应的各食材关联出现次数

SQL实现方案

核心逻辑是对产品、食材两个字段联合分组统计次数,通用SQL写法如下(所有支持标准SQL的数据库都可运行):

SELECT 
  Products,
  Ingredients,
  COUNT(*) AS relation_count
FROM 替换为你的实际表名
GROUP BY Products, Ingredients
-- 可选排序规则,可根据需求调整
ORDER BY Products, relation_count DESC;

运行上述语句会得到每行都带产品名的统计结果,如果需要和你示例中完全一致、同一产品仅第一行显示产品名的展示效果,以MySQL为例可借助窗口函数实现:

SELECT 
  IF(row_num = 1, Products, '') AS Products,
  Ingredients,
  relation_count
FROM (
  SELECT 
    Products,
    Ingredients,
    COUNT(*) AS relation_count,
    ROW_NUMBER() OVER(PARTITION BY Products ORDER BY COUNT(*) DESC) AS row_num
  FROM 替换为你的实际表名
  GROUP BY Products, Ingredients
) AS stat_result
ORDER BY Products, row_num;

逻辑说明

  • 内层子查询先按产品、食材两个维度分组,统计每组的关联次数,同时给每个产品下的食材按统计次数降序排序打行号
  • 外层判断行号为1的行才显示产品名,其余行产品名留空,即可实现你给出的示例输出效果

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.23 15:45:01