【发布时间】:2021-07-30 17:54:55
【问题描述】:
我有两个表,products 和 provider
提供者:
nif
user
产品:
cod_prod
name
price
provider
stock
预期结果:
例如我们在表中有产品这个;
| cod_prod | name | Price | Provid | Stock |
|---|---|---|---|---|
| 1 | ball | 2.00 | peter | 20 |
| 2 | shoe | 1.00 | peter | 20 |
| 3 | flower | 3.00 | peter | 20 |
| 4 | bag | 7.00 | peter | 20 |
| 5 | balloon | 3.00 | peter | 20 |
| 6 | gun | 2.00 | martin | 20 |
| 7 | shotgun | 4.00 | martin | 20 |
| 8 | cheese | 7.00 | martin | 20 |
| 9 | shirt | 7.00 | martin | 20 |
| 10 | sunglass | 6.00 | martin | 20 |
在这种情况下,价格较低的产品是鞋子,
2 鞋 1.00 彼得 40
如果在查询后得到较低产品价格的结果,我想要什么, 我得到了这个结果:
name provider
ball peter
shoe peter
flower peter
bag peter
balloon peter
因为选择了较低的产品价格后进行查询,所以从产品价格较低的供应商处获取所有产品。
我现在有这个问题
select provider.user, products.name from provider
inner join products
on provider.nif = products.provider
where products.price = (select min(products.price) from products);
有了这个我可以选择最便宜的商品,但我不知道如何解决,问题是我想要一个查询,在最低便宜商品的条件下,我可以获得该供应商的产品列表。
P.D:我用产品表的预期结果和示例更新了问题,以更具体地说明我想要获得的内容。
【问题讨论】:
-
样本数据和期望的结果将阐明您想要什么。
-
我更新了预期的结果,以澄清我想用这个查询做什么:)