选择具有非不同列值的行
处理数据时,可能需要检索特定列值不重复的行清楚的。例如,在包含电子邮件地址的表中,识别不同客户记录中的重复电子邮件地址可能很有用。
提供的查询采用 GROUP BY 和 HAVING 子句按电子邮件地址对行进行分组并识别出现的行不止一次。然而,据报道它存在性能问题。
另一种方法是使用 IN 子句与子查询相结合。此方法从 Customers 表中选择多次出现的电子邮件地址:
SELECT [EmailAddress], [CustomerName] FROM [Customers] WHERE [EmailAddress] IN (SELECT [EmailAddress] FROM [Customers] GROUP BY [EmailAddress] HAVING COUNT(*) > 1)
此查询性能通常比使用 GROUP BY 和 HAVING 子句更快,并且应该有效返回具有重复电子邮件地址的行。
以上是如何有效地选择数据库中具有非唯一列值的行?的详细内容。更多信息请关注PHP中文网其他相关文章!