可能重复:
How to LEFT JOIN two tables with the same column nameMySQL的左连接
我有这样的说法:
$sql = "SELECT * FROM deliveries AS del
LEFT JOIN job_sheet ON job_sheet.job_id=del.jID
LEFT JOIN hierarchy AS h ON job_sheet.h_str=h.hID
LEFT JOIN customers ON h.cust=customers.ID";
我的问题是, '客户' 表中有一个名为ID列'送货'表也是如此。当我运行一个while循环来输出结果时,问题就开始了。
while($data = mysql_fetch_array($sql))
{
echo $data['ID'];
}
它输出加入的最后一张表的值...我怎样才能将两者分开?我的意思是,我需要能够从两个表中输出“ID”,但在查询中,这是最后一个获胜的表。重命名列不是一个选项...
任何输入?
决不'SELECT *'在连接查询。始终明确指出SELECT列表中的列,并指定别名:'SELECT h.ID as h_id,del.ID as del_id' –