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如何加入表[重复]的主要内容,如果未能解决你的问题,请参考以下文章