mysql - 从表中查询 Product 和 Product_Photo 有超过 1 张图片 只显示 1 张图片
问题描述
我有 2 个表,产品和 product_photo
product:
id Title
1 Nike
2 Adidas
3 Piero
产品照片:
id id_product photo_path
1 1 /opt/A.png
2 1 /opt/B.png
3 2 /opt/C.png
4 3 /opt/D.png
这是查询
SELECT p.title, p.id FROM product p JOIN (
SELECT id_product, photo FROM product_photo GROUP BY id_product,photo
)pr on id_product = p.id;
通过查询我得到了结果:
Title id_product path
Nike 1 /opt/A.png
Nike 1 /opt/B.png
Adidas 2 /opt/C.png
Piero 3 /opt/D.png
我想要这样的最终结果只有 1 张图片,比如分组
Title id_product path
Nike 1 /opt/A.png
Adidas 2 /opt/C.png
Piero 3 /opt/D.png
任何线索,很难删除相同的数据?
解决方案
使用聚合函数
SELECT p.title, p.id,max(path)
FROM product p join product_photo pp on p.id=pp.id_product
group by p.title, p.id
推荐阅读
- xml - Cobol xml 解析出现异常
- javascript - 访问 react-chartjs 饼图的一部分
- jquery - Opencart 3 网格系统 Undestand 类别网格视图
- ios - 尽管 Firebase 深层链接成功打开应用程序,但未调用“继续 userActivity”方法
- ios - 使用firebase聊天时如何从下到上设置数据
- outlook - Outlook 插件文档:位置和电子邮件用户的格式
- swift - 如何在swiftUI中忽略具有线性渐变的背景的安全区域?
- primefaces - 惰性搜索在 Primefaces 7.0 中不起作用
- hybris - Hybris 目录 cronjob 同步不起作用
- java - 实现时如何修复文本更改侦听器错误?