【发布时间】:2011-02-07 18:53:25
【问题描述】:
我需要加入 3 张桌子。合同表是主表,“工作”和“公司”表是可以关联到合同表的额外信息。
所以,因为我想要我的“合同”表中的所有条目,以及“工作”和“公司”数据(如果存在),我这样编写查询......
$sql = "SELECT * FROM contracts
LEFT JOIN jobs ON contracts.job_id = jobs.id
LEFT JOIN companies ON contracts.company_id = companies.id
ORDER BY contracts.end_date";
现在我将如何在 PHP 中输出它?我试过了,但一直收到未定义的错误“通知:未定义的索引:contracts.id”...
$sql_result = mysql_query($sql,$connection) or die ("Fail.");
if(mysql_num_rows($sql_result) > 0){
while($row = mysql_fetch_array($sql_result))
{
$contract_id = stripslashes($row['contracts.id']);
$job_number = stripslashes($row['jobs.job_number']);
$company_name = stripslashes($row['companies.name']);
?>
<tr id="<?=$contract_id?>">
<td><?=$job_number?></td>
<td><?=$company_name?></td>
</tr>
<?
}
}else{
echo "No records found";
}
感谢任何帮助。
【问题讨论】:
-
您可能希望使用“别名”来简化获取数据的过程...
标签: php mysql double outer-join