簡體   English   中英

如何修改我的查詢,每個產品只顯示一張圖片?

[英]How to edit my query show only one image per product?

我有兩個表,products和product_images。 Product_images包含每個產品的圖像條目。 每個產品有很多圖像。

我正在使用以下SQL查詢,但是每個產品只顯示一張圖片。 現在,每個產品獲得的條目與圖片一樣多。

為此,我將展示很多產品,例如類別中的所有產品,而不是單個產品。

select products.product_id, product_images.image,
       products.name, products.description
from product_images
left join products on products.product_id = product_images.product_id 
where products.category_child= 1

如何僅顯示每個產品一個圖像(第一個)?

如果您可以按字典上最小的圖像名稱使用,則此查詢將起作用:

select products.product_id,  MIN(product_images.image), products.name, products.description 
from product_images 
     left join 
     products 
     on products.product_id = product_images.product_id 
where products.category_child= 1 
group by products.product_id

另外,您可能要在此處使用INNER JOIN而不是LEFT JOIN ,因為如果出於某種原因, LEFT JOIN還將返回不屬於任何產品的圖像。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM