में उच्चतम परिणाम प्राप्त करना मेरे पास तीन टेबल हैं; नीलामी, नीलामी बोलियां और उपयोगकर्ता। तालिका संरचना इस तरह दिखता है:जॉइन
Auctions:
id title
-- -----
1 Auction 1
2 Auction 2
Auction Bids:
id user_id auction_id bid_amt
-- ------- ---------- -------
1 1 1 200.00
2 2 1 202.00
3 1 2 100.00
Users
सिर्फ एक मानक तालिका है, आईडी और उपयोगकर्ता नाम के साथ।
मेरा लक्ष्य इन तालिकाओं में शामिल होना है, इसलिए मैं इन बोलियों के उच्चतम मूल्य प्राप्त कर सकता हूं, साथ ही उन बोलियों से संबंधित उपयोगकर्ता नाम प्राप्त कर सकता हूं; तो मैं एक परिणाम तो तरह की स्थापना की है:
auction_id auction_title auctionbid_amt user_username
---------- ------------- -------------- -------------
1 Auction 1 202.00 Bidder2
2 Auction 2 100.00 Bidder1
अब तक अपनी क्वेरी इस प्रकार है के रूप में:
SELECT a.id, a.title, ab.bid_amt, u.display_name FROM auction a
LEFT JOIN auctionbid ab ON a.id = ab.auction_id
LEFT JOIN users u ON u.id = ab.user_id
GROUP BY a.id
यह एकल पंक्तियों मैं के बाद कर रहा हूँ हो जाता है, लेकिन यह सबसे कम bid_amt प्रदर्शित करने के लिए, नहीं लगता है उच्चतम। कि, काम नहीं करता है की तरह
SELECT id, user_id, auction_id, MAX(bid_amt) FROM action_bids GROUP BY auction_id
यह वही है जो मुझे चाहिए था। धन्यवाद! – Keithamus