[英]Get 3 column left join based on same one table
I have 3 column here in tblItem我在 tblItem 中有 3 列
and this 3 column have to join with tblMeasurement这 3 列必须加入 tblMeasurement
I have tried this, but when I display 3 columns show the same all.我已经尝试过了,但是当我显示 3 列时都显示相同。
SQL
SQL
$sql = "SELECT A.itemID, A.categoryID, A.purchaseMeasurementID, A.stockMeasurementID, A.calculationMeasurementID, A.itemName, B.itemCategoryName, C.measurementName
FROM tblPurItem A
LEFT JOIN tblPurItemCategory B
ON A.categoryID = B.itemcategoryID
LEFT JOIN tblPurMeasurement C
ON A.purchaseMeasurementID= C.measurementID";
As you see my sql above, it has join only for purchaseMeasurementID.正如您在上面看到的我的 sql,它仅用于 purchaseMeasurementID。 How do I join stockMeasurementID and calculationMeasurementID based on also tblPurMeasurement?
如何基于 tblPurMeasurement 加入 stockMeasurementID 和 calculationMeasurementID? Is there any missing here?
这里有什么遗漏吗?
Try using this subquery
instead.请尝试改用此
subquery
。
SELECT A.itemID, A.categoryID, A.purchaseMeasurementID, A.stockMeasurementID, A.calculationMeasurementID, A.itemName
, (select B.itemCategoryName from tblPurItemCategory B where A.categoryID = B.itemcategoryID limit 1) as itemCategoryName
, (select C.measurementName from tblPurMeasurement C where A.purchaseMeasurementID= C.measurementID limit 1) as purchasemeasurementName
, (select C.measurementName from tblPurMeasurement C where A.stockMeasurementID= C.measurementID limit 1) as stockmeasurementName
, (select C.measurementName from tblPurMeasurement C where A.calculationMeasurementID= C.measurementID limit 1) as calculationmeasurementName
FROM tblPurItem A
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.