使用SQL Query的数据复制解决方案

时间:2015-11-29 00:40:04

标签: mysql sql sql-server business-intelligence

我遇到了关于数据重复的问题;

PIN       OwnerNum      Effectivity Year    Total Tax
pin123    1003          2014                2,000.00
pin123    1002          2009                3,000.00
pin456    4002          2015                1,500.00
pin456    4001          2014                  900.00

我的表中有两列,这是我在SQL查询中所需的输出;

PIN      OwnerNum      Effectivity Year    Total Tax
pin123    1003          2014                2,000.00
pin456    4002          2015                1,500.00

我真的觉得这很难,因为我正在为真实财产税系统进行BI报告,该系统没有未来或过去有效年份的实体。为了简化数据,我创建了一个有效年份< = 2015的模块。我想每个针和所有者获得最高效率的年份。谢谢你的帮助。

1 个答案:

答案 0 :(得分:1)

首先找到每Effectivity Year的最高PIN。然后将结果与PINEffectivity Year上的表格结合使用,以获得结果。

select PIN,OwnerNum,`Effectivity Year`,Total Tax 
from yourtable A
Inner join 
(
select PIN,max(`Effectivity Year`) as Max_Effectivity_Year
from Yourtable 
Where  `effectivity year` <= 2015
Group by PIN
) B 
ON A.PIN = B.PIN
AND A.`Effectivity Year` = B.Max_Effectivity_Year