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

如何使用SQL基于广告名称列去重 为每个广告保留任意一个关联URL

SQL 广告名称去重保留对应URL方案

需求说明

现有数据表包含「广告名称(Ad name)」和「URL」两列,同一广告名称会对应多个短链URL变体,所有变体最终跳转目标地址一致,需要查询得到去重结果:每个广告名称仅保留唯一值,对应任意一个关联URL即可。

可用SQL写法

1. 全数据库通用写法(适配所有SQL引擎)

使用GROUP BY聚合函数直接取任意URL即可,MAX()/MIN()都可以使用,因为所有URL对应同一个目标,取任意一个都符合要求:

SELECT 
    `Ad name` AS 广告名称,
    MAX(URL) AS 关联URL
FROM 你的表名
GROUP BY `Ad name`;

说明:把上述SQL中的「你的表名」替换为你实际的数据表名称即可,也可以用MIN(URL)替换MAX(URL),执行效果都是每个广告名称仅返回一条对应URL记录。

2. PostgreSQL/MySQL 8.0+/SQL Server 等支持窗口函数的数据库写法

如果后续有扩展需求(比如取最新生成的URL),可以用窗口函数实现,当前需求下写法如下:

WITH ranked_url AS (
    SELECT 
        `Ad name` AS 广告名称,
        URL AS 关联URL,
        ROW_NUMBER() OVER (PARTITION BY `Ad name` ORDER BY URL) AS rn
    FROM 你的表名
)
SELECT 广告名称, 关联URL
FROM ranked_url
WHERE rn = 1;

示例执行效果

广告名称关联URL
ad name 1URL variant 1
ad name 2URL variant 1

注:返回的URL是同广告名下的任意变体,完全符合需求要求。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.28 04:06:04