选择不同的值并插入表返回重复项

时间:2013-11-27 12:34:44

标签: sql insert oracle11g oracle-sqldeveloper duplicate-removal

我的表格Data_Excel包含人物的详细信息:P_name,P_address,P_city,而Person表格ID,startdate,enddate,我必须在Person_location中插入值以下值ID,address,city,country,startdate,enddate,问题是我想在person_location中插入值ID,StartDate作为主键我试过以下查询但是有以下结果:

SELECT Distinct A.ID,A.name,A.startdate,A.enddate,de.source,de.P_address,de.P_city,de.P_country 
    from data_excel de, person A 
    where A.name = de.P_name 
    and ID > 6566;

结果:

 `7552  Adan George H.  30/12/1928  31/12/1928  Recueil Financier 1928  Avenue des Trois Couleurs 17    Woluwe-Saint-Pierre (Bruxelles) 
  7552  Adan George H.  30/12/1928  31/12/1928  Recueil Financier 1928  Avenue des Trois Couleurs 17    Woluwe-Saint-Pierre (Bruxelles) Belgie 

1 个答案:

答案 0 :(得分:0)

Hello'user408437'此查询适用于获取表上的重复行

with cte as
(
    select *,rn= ROW_NUMBER() over (partition by id order by id) from tablename 
)
select * from cte where rn>1

如果您的替换>来自=然后他获得每个重复行的单行

我希望你的工作很少