わかりました。クエリで何が起こっているのか困惑していますが、私がやろうとしていることは次のとおりです。
現在、以下のクエリを実行すると、列 product_id = 2 のbid_id は 30 であることがわかりますが、30 ではなく、120 である必要があります (bid_price の値は 29.99 で正しいですが)。
SELECT lowbid.bid_id, lowbid.bid_price
FROM (SELECT bid_id, min(bid_price) AS bid_price, product_id FROM tbl_products_bid WHERE is_active = 1 AND is_deleted = 0 GROUP BY product_id) AS lowbid;
このクエリが私にランダムなbid_idを与えているため、SQLの第一人者が1.私が完全に太っている場合、または2.別の方法がある場合、またはなぜ私ができるのかについての洞察を提供できるかどうか疑問に思っていた理由がわかりませんそのbid_priceとは関係のないランダムなbid_idを取得しています。
私が何を意味するかを説明できる SQLFiddle を作成しましたが、助けていただければ幸いです。
http://sqlfiddle.com/#!2/de77b/14
また、このクエリが別のクエリの一部であることをお知らせするために、問題を引き起こしていると思われる要素 (上記) を取り出しました。より大きなクエリの一部を以下に示します。
SELECT lowestbid.bid_id, lowestbid.product_id, lowestbid.bid_price as seller_bid_price, seller_description, pb.is_countdown, pb.startdate, pb.enddate
FROM
tbl_products_bid pb
inner JOIN (
SELECT bid_id, product_id, min(bid_price) as bid_price, seller_id, description as seller_description, is_countdown, startdate, enddate from tbl_products_bid where is_active = 1 group by product_id
) AS lowestbid ON pb.bid_id = lowestbid.bid_id
order by lowestbid.bid_price asc