我正在尝试编写一个查询,该查询将查找组中的所有行除了具有最大值的行 . 到目前为止,我有一个查询,找到具有最大值的行,但现在我需要找到所有其余的行 . 这是一个包含两个数据库和示例数据的SQLFiddle . 我也有查找最大行的查询 . http://sqlfiddle.com/#!2/514d2/33
对于那些不想使用SQLFiddle的人...表名:列表表名:出价
SELECT listings.end_date, listings.user_id, listings.title,
listings.auc_fp, listings.id, listings.auc_image1
FROM listings
JOIN bids b1
ON b1.listing_id=listings.id
LEFT JOIN bids b2
ON b2.listing_id=listings.id AND b1.bid < b2.bid
WHERE b1.user_id = 1
AND b2.bid IS NULL
AND listings.end_date > NOW()
ORDER BY listings.list_ts DESC
上面是查找最大行的查询 . 我正在尝试使用listing.id = bids.listing_id上的出价表加入列表表格 . 然后我需要找到用户($ user或用户“1”)对该列表出价的所有行 . 然后我需要排除用户具有最高出价的列表(这是上面的查询所做的) .
我原本以为我可以使用上面的查询作为子查询来排除用户是最高出价者的列表 . 但是我不确定这是否是最好的方法,我对子查询不太好 .