私はオンラインで多くの調査を行ってきましたが、私の理解では、私のクエリは問題ないと思います。そのため、私が間違っていることを指摘するためにあなたの助けが必要です.
私のクエリがすべきこと
私のクエリは、両方の倉庫から在庫レベルを取得する必要があります
問題は
製品が両方の倉庫にない場合、クエリは結果を与えません。
まず、倉庫の在庫レベルのデータベースが 2 つあります。そのように見えます。
データベース
-warehouse1
-warehouse2
テーブル
-product
コラム
-id
-SKU
-qty
だから私のクエリは
SELECT
warehouse1.product.id as 1_id,
warehouse2.product.id as 2_id ,
warehouse1.product.SKU,
warehouse1.product.qty as 1_qty,
warehouse2.product.qty as 2_qty
FROM `warehouse1`.`product`
LEFT JOIN `warehouse2`.`product`
ON
(`warehouse1`.`product`.`SKU` = `warehouse2`.`product`.`SKU`)
WHERE
warehouse1.product.SKU = '$sku'
OR
warehouse2.product.SKU = '$sku'
ORDER BY
(1_qty + 2_qty) DESC
where
このような句を作ると
WHERE warehouse1.product.SKU = '$sku'
それは機能していますが、両方の倉庫から在庫を取得できません。
このデータベースに求めている製品がなくても、両方の倉庫から在庫レベルを受け取りたい場合はどうすればよいですか。
ありがとう