SQL:数据清洗

SQL: Data Cleaning

我遇到了一个不知道如何归类的问题。所以,请原谅我的通用标题。我有一个像这样的数据集:

表 1:列 1、列 2、列 3。 按照我的业务逻辑,对于一对'Column1 Column2',Column3只能有一个唯一值。所以下面 table 是有问题的,因为第二个条目:

Table1
Column1  Column2  Column3
A1       B1       R
A1       B1       O   << ERROR! for A1-B1 pair only one value on column3 is accepted
A2       B2       R
A2       B3       J
A3       B3       K
A4       B5       K

从上面table我想找到有问题的条目:

A1       B1       R
A1       B1       O

在此先感谢您的帮助!

使用您的示例列名称,您可以运行以下查询仅查看第 3 列中具有超过 1 个值的 Column1/Column2 对。

SELECT Column1, Column2, COUNT(DISTINCT Column3) as Column3
FROM Table1
GROUP BY Column1, Column2
HAVING COUNT(DISTINCT Column3) > 1

您可以省略 HAVING 行以查看 Column1/Column2 对的完整列表。