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

SQL Server(SSMS)中按电台与年份统计曲目名称和主艺人唯一组合数的实现方案

解决SQL Server中按电台年份统计曲目-艺人唯一组合数的问题

我来帮你调整SQL语句,直接得到你想要的结果,不用再依赖Excel透视啦。

首先得明确你的核心需求:统计每个电台每年里,「曲目名称+主艺人」这个组合的唯一数量。你之前的SQL问题出在分组维度不对——把Main Artist也加入了GROUP BY,导致结果是按艺人拆分的,而不是按电台+年份整体汇总。

下面分两种情况给你解决方案:

情况1:使用SQL Server 2017及更高版本

从2017版本开始,SQL Server支持在COUNT(DISTINCT)里直接指定多个列,这样可以精准统计两个字段的唯一组合数:

SELECT 
    COUNT(DISTINCT [Track Title], [Main Artist]) AS Count,
    [Station],
    [Year]
FROM 
    your_table_name -- 替换成你的实际表名
GROUP BY 
    [Station], [Year]
ORDER BY 
    [Station], [Year] DESC;

情况2:使用SQL Server 2016及更早版本

如果你的版本不支持多列COUNT(DISTINCT),可以用拼接字段的方式生成唯一标识(注意选一个不会出现在曲目或艺人名称里的分隔符,比如|,避免拼接后出现重复):

SELECT 
    COUNT(DISTINCT CONCAT([Track Title], '|', [Main Artist])) AS Count,
    [Station],
    [Year]
FROM 
    your_table_name -- 替换成你的实际表名
GROUP BY 
    [Station], [Year]
ORDER BY 
    [Station], [Year] DESC;

这两个语句都会直接输出你期望的格式:按电台和年份分组,显示对应的唯一组合数量,完全不需要后续Excel处理。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.04.30 16:17:46