まず、join
を使用する場合 、常に on
MySQLはこれを必要としませんが、句。 cross join
が必要な場合 、それについて明確にします。
次に、tm_markets
を使用しません クエリ内のテーブル。不要なので削除してください。
結果のクエリは機能するはずです:
SELECT MIN(`map`.`Product_Price`) as `minProductPrice`,
MAX(`map`.`Product_Price`) as `maxProductPrice`,
`pr`.`Product_Name` as `productName`
FROM `bm_market_products` `map` join
`bm_products` as `pr`
on map`.`Product_Id` = `pr`.`Product_Id`
WHERE `map`.`Product_Id` = 1
選択している商品は1つだけなので、group by
おそらく必要ありません。ただし、これを検討することもできます:
SELECT MIN(`map`.`Product_Price`) as `minProductPrice`,
MAX(`map`.`Product_Price`) as `maxProductPrice`,
`pr`.`Product_Name` as `productName`
FROM `bm_market_products` `map` join
`bm_products` as `pr`
on map`.`Product_Id` = `pr`.`Product_Id`
group by `map`.`Product_Id`
これにより、すべての製品の情報が返されます。