Pertama, ketika Anda menggunakan join , Anda harus selalu memiliki on klausa, meskipun MySQL tidak memerlukan ini. Jika Anda ingin cross join , lalu jelaskan secara eksplisit.
Kedua, Anda tidak menggunakan tm_markets tabel sama sekali dalam kueri. Itu tidak diperlukan, jadi hapus.
Kueri yang dihasilkan seharusnya berfungsi:
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
Karena Anda hanya memilih satu produk, group by mungkin tidak diperlukan. Namun, Anda mungkin mempertimbangkan ini:
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`
Itu akan mengembalikan informasi untuk semua produk.