Több táblás lekérdezés + MAX érték

Sziasztok!

Van az alábbi lekérdezés ami működik is rendesen. Lekérdezem azokat a sorokat amelyeknek az id-je megegyezik majd azt a sort szeretném amelyikben a legmagasabb ár van. Ez eddig ezzel a lekérdezéssel megy is.

$r = $db -> query("SELECT termek_id AS maxtermek_id, uid AS max_uid, termek_ar AS maxtermek_ar, termek_date AS maxtermek_date FROM termekek
INNER JOIN (SELECT MAX(termek_ar) AS maxtermek_ar FROM termekek WHERE shop_id = $shopid GROUP BY termek_id) t1 ON termekek.termek_ar=t1.maxtermek_ar");

Viszont a gondom az, ebben a táblában szerepel egy olyan rekord is ahol a user id szerepel. Ezt szeretném összehozni a user táblával, hogy megkapjam annak a usernek az adatait aki rögzítette a terméket.

Hozzászólások

Szia!

Például így tudod megtenni:

$r = $db -> query("SELECT termek_id AS maxtermek_id, uid AS max_uid, termek_ar AS maxtermek_ar, termek_date AS maxtermek_date, u.name FROM termekek
INNER JOIN (SELECT MAX(termek_ar) AS maxtermek_ar FROM termekek WHERE shop_id = $shopid GROUP BY termek_id) t1 ON termekek.termek_ar=t1.maxtermek_ar")
INNER JOIN user u ON u.user_id=termekek.user_id;

A példám feltételezi, hogy a user tábla elsőődleges kulcsa user_id és a felhasználó neve a user tábla "name" mezőjében van