我在一个名为 products 的表中有 4 列
id|p_name| p_img |
1 | Xs | xsmax.png |
2 | Xs | xr.png |
3 | XR | xs.png |
我想获得 p_name 的 DISTINCT 值并回显它的 p_img。所以我使用了下面的代码。
但是,它会显示所有 p_image,因为没有重复项。我想根据 p_name 显示。
SELECT DISTINCT product_name, product_img FROM products
while($row=mysqli_fetch_assoc($result)){
}
expected output
p_name| p_img |
Xs | xsmax.png |
XR | xs.png |
最佳答案
似乎您需要在子查询中使用聚合:
SELECT product_name, product_img
FROM products
WHERE (id, product_name) in
( SELECT MAX(id), product_name
FROM products
GROUP BY product_name
)
取决于 “所以我只想显示条目中的第一张图片并忽略其余图片。”
关于mysql - 根据同一行中的另一个 DISTINCT 列获取 DISTINCT 列,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57404461/