gpt4 book ai didi

MySQL:同一行中某些条件下的 SELECT 值和最小值

转载 作者:行者123 更新时间:2023-11-29 12:34:51 24 4
gpt4 key购买 nike

(MySQL)用“简单”的术语来说,我需要添加一个最低价格列。即 PA 和 DA 记录的每个唯一组合的最低价格。

原始数据示例

id | PA  |     DA     |  price |
---|-----|------------|--------|
1 | SW1 | PO19 | 100 |
1 | W6 | E16 | 5 |
2 | SW1 | PO19 | 90 |
2 | W6 | E16 | 8 |
3 | TW6 | SO14 | 2000 |
3 | W6 | E16 | 9 |

示例的输出

id | PA  |     DA     |  price | MIN price|
---|-----|------------|--------|--------- |
1 | SW1 | PO19 | 100 | 90 |
1 | W6 | E16 | 5 | 5 |
2 | SW1 | PO19 | 90 | 90 |
2 | W6 | E16 | 8 | 5 |
3 | TW6 | SO14 | 2000 | 2000 |
3 | W6 | E16 | 9 | 5 |

例如上图:对于 PA=SW1、DA=PO19,最低价格=90 (id=2)。

理想情况下,我也想只选择一个特定的 ID,但它仍然返回“全局”最小值。例如如果我想选择id=2,它返回:

id | PA  |     DA     |  price | MIN price|
---|-----|------------|--------|--------- |
2 | SW1 | PO19 | 90 | 90 |
2 | W6 | E16 | 8 | 5 |

我会发布一些我所做的尝试,但它们都是无用的尝试。

问候,

乔治

最佳答案

可以将具有最低价格的子选择连接到原始表以获得结果。

SELECT p.id, p.pa, p.da, p.price, minp.price min_price
FROM prices p
JOIN (SELECT pa, da, min(price) price from prices group by pa, da) minp
ON minp.pa = p.pa and minp.da = p.da
WHERE p.id = 2

关于MySQL:同一行中某些条件下的 SELECT 值和最小值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26942960/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com