php和mysql如何加入表[重复]

Posted

技术标签:

【中文标题】php和mysql如何加入表[重复]【英文标题】:php and mysql how to join a table [duplicate] 【发布时间】:2015-09-20 13:07:51 【问题描述】:

php & mysql 如何从一张表中检索多条记录,并从另一张表中检索对应的记录并一起显示。

我有一个代码,它将我表中所有公司的所有购买价值(交易)相加,并根据公司代码(buy_firm_code)显示价值。我有另一个表 (client_firm),其中包含我所有的公司及其代码。公司名称字段称为公司名称,而公司代码字段称为公司代码,它是交易表的 buy_firm_code 字段的主要字段。我想从 client_firm 表中检索公司名称,并根据我从交易表中检索到的相应的 buy_firm_code 显示它们。如何编写 PHP 代码的第二部分。提前致谢。

<?php

//code that sums all the purchase value of all firms in my table (trades) and displays the value against the firm code(buy_firm_code)

$con=mysqli_connect("localhost","user","password","database");

// Check connection

if (mysqli_connect_errno())



echo "Failed to connect to MySQL: " . mysqli_connect_error();

$buy_firm_code="";         
$buy_value="";

$sql="SELECT buy_firm_code, SUM(trade_value) value_bought FROM trades GROUP BY buy_firm_code ORDER BY value_bought DESC";

if ($result=mysqli_query($con,$sql))


// Fetch one and one row

  while($row=mysqli_fetch_array($result))

  $buy_firm_code=$row['buy_firm_code']; 
  $buy_value = $row['value_bought'];

  echo $buy_firm_code.'<-->'.$buy_value .'<br>';



// Free result set
 mysqli_free_result($result);

mysqli_close($con);

?>

【问题讨论】:

为什么不想在 SQL 查询中加入结果? 【参考方案1】:

将您的 sql 查询更改为此

$sql="SELECT t.buy_firm_code, f.firm_name, SUM(t.trade_value) value_bought 
    FROM trades t,client_firm f
    WHERE f.firm_code = t.buy_firm_code
    GROUP BY buy_firm_code ORDER BY value_bought DESC";

while 阻止此

while($row=mysqli_fetch_array($result)) 
    $buy_firm_code=$row['buy_firm_code']; 
    $buy_value = $row['value_bought'];
    $firm_name = $row['firm_name'];
    echo $buy_firm_code.'<-->'.$firm_name.'<-->'.$buy_value .'<br>';

如果它显示了您需要的内容,请告诉我

【讨论】:

非常感谢大家。我将在今天晚些时候尝试“WHERE”和“JOIN”选项,然后告诉你进展如何。 再次感谢大家。 “Where”和“JOIN”都运行良好。我正面临一个新的挑战,但我希望在尽我所能后发布。 不客气,如果对你有用,请将答案标记为已接受

以上是关于php和mysql如何加入表[重复]的主要内容,如果未能解决你的问题,请参考以下文章

对mysql中的加入表应用限制[重复]

如何从mysql数据库表中仅获取php数组的匹配项[重复]

如何使用php更新mysql表中的特定表行[重复]

在mysql数据库上加入查询[重复]

MySQL 性能:加入与 WHERE [重复]

PHP Mysql获取表上次更新时间和日期[重复]