`SELECT
t.UniqueID, t.qty, t.name1, t.Surname, t.City,t.State,t.Specialty, t.Languages,t.Company, t.Email
FROM (
SELECT
s.name1, s.Surname, s.City,s.State,s.Specialty, s.Languages,s.Company, s.Email,s.UniqueID
, COUNT(*) OVER (PARTITION BY s.name1, s.Surname, s.City,s.State) AS qty
FROM [dbo].[Diverse_Full_Dataset] s
) t
WHERE
t.qty >1`
上面的查询给出了这样的重复记录,其中包含表中的专业、语言、公司和电子邮件列 请打开截图查看
查询给出了大约 1,13,721 条记录 首先,我需要对 Speciality、LANGUAGE、COMPANY 和 EMAIL 的数据字段施加权重: 我想写一个查询,如果我有一个大于 1 的记录,假设它是 4,那么首先我想从重复行的所有 4 行中检查 Specialty 是否为 null,如果不是 null,则删除所有重复的记录,这将是 rest离开,现在如果 Specialty 为 null 然后检查下一个 LANGUAGE 是否为 null 如果不为 null 然后删除所有重复记录,如果 LANGUAGE 为 null 然后检查 Company 是否为 null 如果不为 null 然后删除所有重复记录现在将被保留如果 Company 为 NULL,则检查 Email 是否为空。它只是在这四个列上设置了优先级
我只想查询上述场景。 对不起,我无法更好地向您解释,请问我以上内容是否无法理解。
我什么都没尝试,因为我在用 sql 编写条件方面非常新