有人可以帮助我深入思考如何修复SQL表中的数据(通过尝试不给我一个我可以运行的SQL例程)。
好的,情况就是这样......假设我有一个表有一个名为ColumnA的列,它有很多重复值。我需要从相关表中删除所有重复的条目。问题是......如果我不得不把伪代码写成一个计划,应该写什么SQL 非常感谢能给我任何指示的人。
亲切的问候 詹姆斯
答案 0 :(得分:0)
我认为你已经为你所描述的问题阐述了一个非常基本的伪代码,声明你希望从A列中删除重复的值。
对于这个例子,我倾向于;
查找重复项的所有实例
制定确定保留哪一个的方法(Google" MAX N in 组"对于想法)有好文章here on SO和DBA Stackexchange以及其他external articles with examples
编写删除内容以满足您标识为不需要的记录 上一步重复
对我来说,在SQL Server中处理这些类型的问题时,我倾向于编写一系列公用表表达式(CTE)来识别我的目标记录,然后根据它进行删除。
例如;
;WITH Duplicates AS (
-- Write your select query to identify which subset of your records are affected by having duplicate values in Column A
), TargetRows AS (
-- Further select from Duplicates some method of MAX N in Group to identify which of the rows are unwanted
) -- Then here DELETE from your table based upon your findings from above