MySQL获得重复(唯一)行

时间:2017-01-31 12:22:34

标签: mysql sql

我有电子邮件和电话应该是唯一的表人(ID,电子邮件,电话,firstName)。如果我有例如(1,“test@mail.com”,null,“test”)并且我尝试添加具有相同数据的新行,这将导致问题,因为唯一的列电子邮件。是否可以理解哪个列导致重复的问题电子邮件或电话(在这种情况下查询应该返回电子邮件列)。

1 个答案:

答案 0 :(得分:0)

从另一个表插入数据时,您可以先连接两个表,以查找违反唯一约束的所有行。

Select A.* 
FROM Data_That_Could_Violate_Your_Constraint A
INNER JOIN Person B
ON(A.phone=B.phone or A.firstName = B.firstName)

这将返回所有违反约束条件的记录,因为它们在phonefirstName或两者中共享相同的值。