我正在研究PHP文件和MySQL。
在文件中,我需要从三个表中选择记录。
如果使用两个表进行查询:
$query_Recordset1 = "
SELECT * FROM tbgastos
LEFT JOIN tbconceptosgastos
ON tbgastos.tipoGasto = tbconceptosgastos.idConceptoGasto
LEFT JOIN tbobras
ON tbgastos.obra = tbobras.idObra
ORDER BY fecha DESC
";
它工作正常,但如果我尝试使用三个表:
$query_Recordset1 = "
SELECT * FROM tbgastos
LEFT JOIN tbconceptosgastos
ON tbgastos.tipoGasto = tbconceptosgastos.idConceptoGasto
LEFT JOIN tbobras
ON tbgastos.obra = tbobras.idObra
LEFT JOIN tbproveedores
ON tbgastos.proveedor = tbproveedores.nombreProveedor
ORDER BY fecha DESC
";
未显示第三个表(tbproveedores
)记录。
我做错了什么?
已更新
tbgastos
tbproveedores
答案 0 :(得分:3)
在你的tbgastos表中,你有一个int类型的外键(证明者)。 而且你希望它与表tbproveedores相匹配。你不想指向tbproveedores.idProveedor吗?
$query_Recordset1 = "
SELECT * FROM tbgastos
LEFT JOIN tbconceptosgastos
ON tbgastos.tipoGasto = tbconceptosgastos.idConceptoGasto
LEFT JOIN tbobras
ON tbgastos.obra = tbobras.idObra
LEFT JOIN tbproveedores
ON tbgastos.proveedor = tbproveedores.idProveedor
ORDER BY fecha DESC
";