SQL重复结果百分比

时间:2018-08-28 15:11:29

标签: sql-server duplicates percentage

我的数据库中包含具有以下列的表,这是一个问题:

Program_ID, Vehicle_VIN, Vehicle_Type 

我需要在以下位置创建报告

Program_ID, AmountOfAllPoliciesInProgram, PercentageDuplicatesInProgram

where Vehicle_type = 10

重复的条件是表中Vehicle_VIN的专用Program_ID必须有1个以上的唯一时间。

它在Microsoft SQL Server Management Studio中

AmountOfAllPoliciesInProgram是:

SELECT 
    PROGRAM_ID, COUNT(*) AS AmountOfAllPoliciesInProgram 
FROM 
    dbo.table 
WHERE
    Vehicle_type = 10 
GROUP BY 
    PROGRAM_ID   

1 个答案:

答案 0 :(得分:0)

我不确定100%正确地理解您,但是您可以计算出不同的Vehicle_VIN并使用having子句来测试不同的Vehicle_VIN的计数是否大于1像这样

SELECT PROGRAM_ID, COUNT(*) as AmountOfAllPoliciesInProgram, count(distinct Vehicle_VIN) as VIN_COUNT 
FROM dbo.table 
where Vehicle_type = 10 
group by PROGRAM_ID
having count(distinct Vehicle_VIN)>1