【问题标题】:Finding duplicate values in a table with a twist在一个扭曲的表中查找重复值
【发布时间】:2013-10-13 05:15:24
【问题描述】:

我有一个包含许多重复值的数据文件。我希望同时识别原始值和重复值,并将原始值和重复值并排排序。

我的数据文件标题和数据是这样的:

我希望数据是这样的:

我已经使用以下查询找到了重复值:

SELECT a.[wallet] into KYCNew2
  from [dbo].[KYCNew1] A
GROUP BY a.[wallet]
  HAVING COUNT(*) > 1

它只显示了重复的值。但是,我不知道如何并排制作原始值和重复值以及它们的相关数据。有人能帮帮我吗?

【问题讨论】:

  • 必须在一个查询中吗?
  • 您将如何识别重复值和原始值。任何列,如创建日期或活动非活动标志等???
  • 任何将图像更改为可以剪切和粘贴的东西的机会。
  • @amit ranjan:不。只需要完成工作

标签: sql sql-server duplicates sql-server-2012


【解决方案1】:

row_number()pivot 的组合可以做到这一点。您需要事先知道最大重复数才能查看所有内容。

Select
  account,
  [1] as path1,
  [2] as path2
From (
  select
    account,
    path,
    row_number() over (partition by account order by path) r
  From
    Dups
  ) x
pivot (
  min(path)
for 
  r in ([1], [2])
) piv

Example Fiddle

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-10-15
    • 1970-01-01
    • 2020-12-02
    • 1970-01-01
    • 2018-11-10
    相关资源
    最近更新 更多