MySql 테이블에 다음 필드가있는 특정 주문에 대한 세부 정보가 포함 된 order_item
테이블이 있습니다 (여기에 게시 할 필요가없는 일부 항목)).MySQL에서 LIMIT 절을 사용하면 하위 쿼리가 작동하지 않습니다.
- 는
- 는
- 내가 베스트 셀러 제품을 계산해야
- 가격
qty_ordered prod_id ORDER_ID. 다음 SQL 문을 사용하고 있습니다.
SELECT o.prod_id, sum(o.qty_ordered) as qty_ordered, p.prod_img
FROM order_item o, product_image p
WHERE o.prod_id=p.prod_id AND
p.prod_id IN(SELECT prod_id FROM product_image limit 1) AND
order_id IN(SELECT order_id FROM order_table WHERE od_status='Completed')
GROUP BY prod_id
HAVING SUM(qty_ordered)>=5
ORDER BY prod_id DESC
위 쿼리는 베스트 셀러 제품을 계산합니다. 유일한 질문은 위의 문에서 언급 한 하위 쿼리
p.prod_id IN(SELECT prod_id FROM product_image limit 1)
이 작동하지 않는다는 것입니다. MySQL은이 하위 쿼리는 동일한 제품에 대해 여러 제품 이미지가있는 product_image
테이블에 유지되는 제품 이미지를 검색하고 난 표시 중 하나만 필요
This version of MySQL doesn't yet support 'LIMIT & IN/ALL/ANY/SOME subquery'
뿌려줍니다.
내 서버 버전은 5.1.48입니다. 이 상황을 해결할 다른 방법이 있습니까?