나는이 쿼리를 사용합니다 (세 개의 하위 쿼리 모두 동일한 행에서 다른 열을 선택한다는 점에 유의하십시오). 본질적으로 product_bid
의 행을 product
행과 함께 최대 날짜로 가져 오려고합니다.하위 쿼리 결과 주위의 MySQL JOIN
SELECT
p.product_id,
p.product_title,
(SELECT b.bid_id FROM product_bids b WHERE b.bid_product_id=p.product_id ORDER BY b.bid_date DESC LIMIT 1) AS bid_id,
(SELECT b.bid_date FROM product_bids b WHERE b.bid_product_id=p.product_id ORDER BY b.bid_date DESC LIMIT 1) AS bid_date,
(SELECT b.bid_amount FROM product_bids b WHERE b.bid_product_id=p.product_id ORDER BY b.bid_date DESC LIMIT 1) AS bid_amount
FROM product p
WHERE p.product_auction_id=325
product_bids
의 PK를 얻을, 그리고에 (서브 쿼리의 결과) 또는이 일의 깨끗한 방법에 합류 한 번 하위 쿼리를 할 수있는 방법이 있나요?
사이드 노트 : 쿼리 최적화 프로그램이이를 중요도가 낮 으면 인식합니까? 하나 개의 SQL 쿼리 내에서 그 일을
감사
이 내 원래의 쿼리는 product_bids''가 이에 행으로 제품을 반환하는 것을 제외하고 완벽합니다. 대신이 중 하나가 왼쪽 결합이 될 수 있습니까? – Adam
@Adam : 예, 물론입니다. (주문 했으므로 실제로 제품에 바로 가입하고 싶습니다.). – eggyal
게시 한대로 알아 냈습니다. 감사. 완전한. – Adam