我是第一次使用 SQL 查询并学习它。我有一张这样的表:
我想计算 productcompanyID 出现了多少次,但一年只计算一次。(对不起,我的英语不是我的语言,我可能不清楚)
我的意思是,目前我已经写了这个 SQL:
SELECT DISTINCT(productcompanyid), COUNT(productcompanyid) FROM mydatabase GROUP BY productcompanyid
它给了我 ID 1: 6 和 ID 2: 4 的结果。
我想要的是 ID 1 : 2 (因为它在 2001 年和 2002 年至少出现一次)和 ID 2: 3 (因为它在 2001 年、2002 年和 2003 年至少出现一次)
谢谢你的帮助。
您实际上需要将 count 和 distinct 结合起来,如下所示:
select productcompanyID, count(distinct yearName) as distinctYears from mydatabase group by productcompanyID