【发布时间】:2020-07-16 04:47:23
【问题描述】:
所以在我的数据库中,我有 2 个相关的表: 这些字段是 id、name、price 和一个 int,所以我知道它们是否全部售出
水果
|IDfruit| name | price | sold |
| 1 |orange | 5 | 0
| 2 |apple | 10 | 0
| 3 |grape | 15 | 1
| 4 |lemon | 7 | 1
主键是 IDfruit
图片
|IDimage| url | idfruit_image
| 1 | image1.png | 1
| 2 | image2.png | 1
| 3 | image3.png | 2
| 4 | image4.png | 3
| 5 | image5.png | 4
| 6 | image6.png | 4
| 7 | image7.png | 4
IDimage是主键,idfruit_image是引用IDfruit的外键
我想要的结果是所有水果和每个水果的第一个图像。
所以我所做的是
select fruits.*, url , idfruit_image
from fruits,images
where IDfruit = idfruit_image;
这会返回所有水果和每个水果的所有图像,但我只想要每个水果的一个图像,我该如何实现?
如果我想要所有出售的水果中的所有东西,并且只想要每个水果的第一张图片,该怎么办
【问题讨论】:
-
如果有多张图片,你要哪张?
标签: mysql sql join greatest-n-per-group