记录哪些电子邮件在同一列表中列出了不同的表,但相同的列名称是电子邮件地址

时间:2015-12-01 09:01:24

标签: php mysql join mysqli inner-join

我有11张桌子

  

EMAIL1,EMAIL2,EMAIL3,EMAIL4,email5,email6,email7,email8,email9,email10,email11

和具有不同电子邮件地址的同一列名称Contact_Email

<?php
    $con = mysql_connect("localhost","root","");
    $db = mysql_select_db("email-db",$con);

    $sql = "SELECT Contact_Email FROM email1,email2,email3,email4";
    $result = mysql_query($sql);
    while($row = mysql_fetch_array($result)) {
    ?>
    <tr>
      <td><? echo $row['Contact_Email']; ?></td>
      <td><? echo '<br>'; ?></td>
    </tr>
    <? } ?>

实际上我想要这个输出

使用加入
选择所有表格中的所有电子邮件 我想要这个输出:
如果重复的电子邮件在所有组合表输出中'是'
否则输出'no'

output like this! see

请帮助我,我该怎么办?

1 个答案:

答案 0 :(得分:0)

请按照以下示例使用UNION:

  

SELECT u.email
  来自email1 AS u
  UNION
  SELECT e.email
  来自email2 AS e

在PHP中:

$sql = "SELECT u.email FROM email1 AS u UNION SELECT e.email FROM email2 AS e";
$result = mysql_query($sql);
while($row = mysql_fetch_array($result)) { ...

避免MYSQL错误“操作'UNION'的非法混合排序”请将所有电子邮件字段同步为等参数