3 개의 MySQL 테이블이 있습니다. 나는 중요한 열만 보여주기 위해 그들을 잘라 냈다.MySQL : 하위 쿼리 및 조인을 사용하여 min()을 선택하는 방법
items
id | title |
1 | Hamlet |
2 | Romeo and Juliet |
3 | The Merchant of Venice |
listings
id | item_id | condition |
1 | 1 | Mint |
2 | 1 | Used - Good |
3 | 2 | New |
4 | 2 | Mint |
5 | 2 | Used - Poor |
6 | 3 | Used - Poor |
7 | 3 | Used - Good |
8 | 3 | Used - Good |
itemListings_variations
id | listing_id | price
1 | 1 | 20.00
2 | 1 | 10.00
3 | 1 | 5.00
4 | 2 | 6.00
5 | 2 | 5.50
6 | 3 | 2.00
7 | 4 | 12.00
8 | 5 | 3.00
9 | 6 | 9.00
예를 들면. 나는 로미오와 줄리엣 검색, 그것은 반환해야합니다 :
item_id | title | min_price
2 | Romeo and Juliet | 2.00
지금까지 어떻게 든 하위 쿼리를 통해 결합하고 결합해야 할 두 개의 쿼리가 있습니다. 내가 가진 : 또한
SELECT
i.id AS item_id,
i.title
FROM items i
WHERE MATCH (i.title) AGAINST (:search)
:
SELECT
l.item_id,
v.listing_id,
MIN(price) AS min_price
FROM itemListings_variation v, itemListings l
WHERE v.listing_id = l.id
GROUP BY v.listing_id
흠, listing_id에 해당하는 대신 2.00이어야합니다. 3 – lamandy
예, 죄송합니다. 2.00이어야합니다. 나는 그것을 업데이트했다. 감사. – Gdev