【发布时间】:2017-04-23 02:26:24
【问题描述】:
我有一个带有ID, First Name 和Last name 的SQL Server 2012 表。 ID 每个人都是唯一的,但由于历史提要中的错误,不同的人被分配了相同的 ID。
------------------------------
ID FirstName LastName
------------------------------
1 ABC M
1 ABC M
1 ABC M
1 ABC N
2 BCD S
3 CDE T
4 DEF T
4 DEG T
在这种情况下,ID’s 1 的人是不同的(他们的姓氏明显不同),但他们拥有相同的ID。如何查询并获得结果?本例中的表有数百万行。如果它是一个较小的表,我可能会用count > 1 查询所有ID’s 并在excel 中过滤它们。
我要做的是,获取已分配给两个不同用户的所有此类ID's 的列表。
任何想法或帮助将不胜感激。
编辑:我认为我没有很好地提出这个问题。
有两个 ID 多次出现。 1 和 4。id 为 4 的行是相同的。我不希望这出现在我的结果中。 ID 为 1 的行,1 行虽然名字相同,但姓氏不同。我只想要那些 ID 相同但名字或姓氏中的一个不同的 ID。
我尝试将多次出现的 ID 加载到临时表中,并尝试将其与父表进行比较,尽管未成功。我可以尝试和实施其他任何想法吗?
【问题讨论】:
-
你想得到什么结果?
-
对不起。我不是很清楚。刚刚编辑了问题。
-
重新看了你的问题后,我更加困惑了。您说“ID 为 4 的行是相同的”。与您提供的数据相比,这不是真的 (
DEF <> DEG)。
标签: sql sql-server windows sql-server-2012 querying