【发布时间】:2010-12-30 05:52:46
【问题描述】:
大约一年来,我们一直允许我们的用户使用不唯一的用户名和/或电子邮件地址登录(尽管每个用户都有唯一的 ID)。尽管系统可以优雅地处理重复的用户名/电子邮件,但我们最终决定强制使用唯一的用户名和电子邮件地址。我的任务是在 MySQL 中生成一个表,该表将显示重复项和正在使用重复项 id 的表(即依赖于重复项的用户 id 的表,使用 1 表示真,0 表示假)。一旦重复数据被标记为删除,该表将用作参考。简而言之,我希望生成一个类似这样的表格:
|用户ID | 用户名 | 电子邮件 | Exists_in_Table1 | Exists_in_Table2 | Exists_in_Table3 |-------------------------------------------------- -------------------------------------------------- --------
| 0001.....| 测试1…………| 电子邮件。| 0..........................| 0..........................| 1..........................|
| 0002.....| 测试2…………| 电子邮件。| 0..........................| 1..........................| 1..........................|
| 0003.....| 测试3…………| 电子邮件。| 1..........................| 1..........................| 1..........................|
如何完成并不重要。由于我的 SQL 技能有些欠缺,我打算使用 PHP 和一些简单的 SQL 查询以编程方式完成此操作。但是,我相信单个 SQL 查询或一系列查询(不使用 PHP)是最干净的方法。我知道如何查询重复项,但我似乎无法弄清楚如何查询多个表并以适当的方式通过用户 ID 连接它们。我很感激这方面的任何帮助。谢谢。
【问题讨论】:
标签: sql mysql join subquery duplicates