【问题标题】:mysql data from 2 table来自2个表的mysql数据
【发布时间】:2014-06-11 08:12:22
【问题描述】:

是的,现在我知道了 JOIN,但仍然没有解决这个问题。

$gender = 6;

$result = mysqli_query($con,"SELECT * FROM ps_customer c LEFT JOIN ps_adress a ON a.customer_id=c.customer_id WHERE c.id_gender='$gender'");

var_dump($result);

mysqli_close($con);

这是我的代码,但结果:假

我尝试了 var_dump 来检查为什么我不能打印我的数据。

此数据打印对我的代码是否正确?

 echo "<h1>People</h1>";
echo "<table border='1'>
<tr>
<th>ID</th>
<th>Name</th>
<th>Lastname</th>
<th>Email</th>
<th>Company</th>
<th>Phone</th>
</tr>";



$result = mysql_query($query) or die(mysql_error());
echo var_dump($result);
while($row = mysql_fetch_array($result)){
  echo "<tr>";
  echo "<td>" . $row['id_customer'] . "</td>";
  echo "<td>" . $row['firstname'] . "</td>";
  echo "<td>" . $row['lastname'] . "</td>";
  echo "<td>" . $row['email'] . "</td>";
  echo "<td>" . $row['company'] . "</td>";
  echo "<td>" . $row['mobile_phone'] . "</td>";
  echo "</tr>";
}

【问题讨论】:

标签: php mysql


【解决方案1】:

简单的加入就可以了。

SELECT *
FROM ps_customer c
    LEFT JOIN ps_address a ON a.customer_id=c.customer_id
WHERE c.id_gender = '$gender'

【讨论】:

  • 好吧,你能帮我如何打印所有数据吗?虽然不工作,但我正在使用你的例子。
  • 没有得到你想要的,但你真的应该从学习 HTML、PHP 和 MySQL 基础开始。
【解决方案2】:

您需要 LEFT JOIN(如果客户没有地址记录)。 假设两个表具有相同的列名“customer_id”来识别客户,您可以使用:

SELECT ps_customer.name,
       ps_customer.lastname,
       ps_customer.company,
       ps_address.phone,
       ps_address.mobile
FROM ps_customer
LEFT JOIN ps_address ON ps_address.customer_id = ps_customer.customer_id
WHERE ps_customer.id_gender = '$gender'

但是在这里要小心。如果每个客户可能有多个地址记录,您将获得包含每个地址记录的相同客户数据的多行。如果是这种情况,您需要更复杂的查询:)

【讨论】:

    【解决方案3】:
    SELECT *
    FROM adress a
    INNER JOIN customer c ON a.customer_id = c.id
    WHERE c.id_gender = $gender
    

    【讨论】:

      【解决方案4】:

      您的查询应该是

      "select cus.name, cus.lastname, cus.company from ps_customer cus, ps_address add where id_gender='".$gender."' and cus.customer_id=add.customer_id"
      

      【讨论】:

        猜你喜欢
        • 2015-10-15
        • 2012-07-16
        • 1970-01-01
        • 1970-01-01
        • 2011-08-29
        • 1970-01-01
        • 2021-10-16
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多