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

BigQuery/SQL:如何基于两列消除重复数据

BigQuery去除双向重复商品组合的SQL方案

方法一:利用DISTINCT + LEAST/GREATEST生成唯一组合

通过LEAST()和GREATEST()函数将一对SKU按固定顺序排列,再用DISTINCT去重:

SELECT DISTINCT
  LEAST(original_SKU, bought_with) AS sku1,
  GREATEST(original_SKU, bought_with) AS sku2,
  quantity
FROM your_table_name;

说明:LEAST()返回两个SKU中字典序更小的那个,GREATEST()返回更大的,这样双向的重复组合会被统一为同一组,DISTINCT就能过滤掉重复行。

方法二:GROUP BY分组聚合

如果需要对其他字段做聚合操作,或者更明确地分组去重,可以用GROUP BY:

SELECT
  LEAST(original_SKU, bought_with) AS sku1,
  GREATEST(original_SKU, bought_with) AS sku2,
  quantity
FROM your_table_name
GROUP BY sku1, sku2, quantity;

说明:通过分组统一后的sku1和sku2,自动合并重复的组合行,由于重复行的quantity值一致,直接包含在GROUP BY中即可。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.21 21:09:25