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

如何修改SQL查询,合并相似术语行并汇总去重UUID计数?

解决方案

可以通过标准化values字段的方式合并重复术语,将重复的短语统一为标准表述后再分组统计。以下是两种可行的修改方案:

方案一:使用CASE语句精准匹配

适合已知所有重复术语的场景,逻辑清晰直观:

SELECT 
  CASE
    WHEN values LIKE '%love it%' THEN 'love it'
    WHEN values LIKE '%hate it%' THEN 'hate it'
    WHEN values LIKE '%neutral%' THEN 'neutral'
    ELSE values  -- 保留其他未匹配的内容(如有)
  END AS standardized_values,
  COUNT(DISTINCT uuid) AS count
FROM
  `response_values` AS rv
LEFT JOIN
  `responses_comprehensive` AS r
ON
  r.question_id = rv.qid
WHERE
  question_wording = "campaign rating" 
  AND values NOT LIKE '%missing%'
GROUP BY
  standardized_values

方案二:使用正则表达式处理重复

适合术语重复形式多样(带/不带空格重复)的场景,扩展性更强:

SELECT 
  REGEXP_REPLACE(values, r'(love it|hate it|neutral)(\s*\1)+', r'\1') AS standardized_values,
  COUNT(DISTINCT uuid) AS count
FROM
  `response_values` AS rv
LEFT JOIN
  `responses_comprehensive` AS r
ON
  r.question_id = rv.qid
WHERE
  question_wording = "campaign rating" 
  AND values NOT LIKE '%missing%'
GROUP BY
  standardized_values

核心逻辑说明

  1. 先将包含重复术语的values字段值,统一转换为标准术语(如love itlove it→love it、neutral neutral→neutral);
  2. 基于标准化后的字段分组,汇总distinct uuid的计数,即可得到期望的合并结果。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.10 07:35:18