mysql - JOIN 表未显示结果

标签 mysql inner-join

我正在尝试将两个表连接在一起,但没有成功。我不确定为什么它返回 0 个结果。感谢您为我指明正确方向的帮助

 $query = "SELECT contacts.account, contacts.lname, contacts.fname, contacts.title, contacts.company, contacts.address, contacts.addresstwo, contacts.city, contacts.state, contacts.zip, contacts.cell, contacts.officenum, contacts.email_status, nameinfo.tags, nameinfo.email
FROM nameinfo
INNER JOIN contacts
ON nameinfo.email=contacts.email";

  $result = mysql_query($query) or die("SQL Error 1: " . mysql_error());
  while ($row = mysql_fetch_array($result, MYSQL_ASSOC)) {
  $masterlist[] = array(
  'click_through' => 'person.php?email='. $row['email'],
    'account' => $row['account'],
    'lname' => $row['lname'],
        'fname' => $row['fname'],
  'tags' => $row['tags'],
   'title' => $row['title'],
        'company' => $row['company'],
  'address' => $row['address'],
  'addresstwo' => $row['addresstwo'],
   'city' => $row['city'],
        'state' => $row['state'],
  'zip' => $row['zip'],
  'email' => $row['email'],
   'cell' => $row['cell'],
        'officenum' => $row['officenum'],
  'mail_status' => $row['email_status']
      );
  }
  echo json_encode($masterlist);

nameinfo 表有一个电子邮件地址和一个与电子邮件关联的联系人标签。同一电子邮件可以有多行,但每行都有不同的标签。联系人表包含用户信息(名字、姓氏、姓名等)。我想要拉取名称信息表,并在电子邮件与电子邮件匹配时用联系人的信息填充它。

nameinfo
email              tags
abc@gmail.com      postcard
abc@gmail.com      business
xyz@gmail.com      postcard

contacts
email              lname         fname        company
abc@gmail.com      Smith         John         Printing Expert Inc
xyz@gmail.com      Doe           Jane         Businesss Cards Inc

我正在尝试组合信息,以便将此结果放入 HTML 表格中。

abc@gmail.com     postcard       Smith       John       Printing Expert Inc
abc@gmail.com     business       Smith       John       Printing Expert Inc
xyz@gmail.com     postcard       Doe         Jane       Business Card Inc

最佳答案

这应该从数据库中为您提供所需的结果(前提是每个表中至少有一个条目对应同一电子邮件地址):

SELECT email, tags, lname, fname, company FROM nameinfo JOIN contacts USING (email)

如果没有,那么您没有提供足够的信息。 table 有多大?什么是指数?

关于mysql - JOIN 表未显示结果,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25125211/

相关文章:

mysql - 使用 Python 从我的机器访问单独的 MySQL 服务器 - 如何? [Mac OS X]

php - 解析 JSON 以在 PHP 中创建 SQL 插入语句

sql - 根据另一个表中的列值选择一个表中的行?

php - Android Studio,登录表单无法连接到mysql数据库

mysql - 如何使用 Ruby ActiveRecord 映射数据库 View ?

javascript - 如何通过 AJAX 调用从 PHP MySQL 数据获取 Highstock 中的数据

java - 使用 jpaTemplate 进行联接查询非常慢

php - 帮助连接查询 (MySQL)

mysql - 像谷歌圈子这样的群组的正确数据库实现

sql - 使用另一个表的记录作为 WHERE 参数更新一个表中的记录