【发布时间】:2015-01-12 14:38:24
【问题描述】:
(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,MIN price=90 (id=2)。
理想情况下,我也只想选择一个特定的 id,但它仍然返回“全局”最小值。 例如如果我想选择 id=2,它会返回:
id | PA | DA | price | MIN price|
---|-----|------------|--------|--------- |
2 | SW1 | PO19 | 90 | 90 |
2 | W6 | E16 | 8 | 5 |
我会发布一些我做过的尝试,但它们都是无用的尝试。
问候,
乔治
【问题讨论】:
-
第一件事:你的意思是添加一个列
Min price怎么样?您可以通过添加 coloumn 来直接执行此操作。或者您想使用查询来执行此操作。您想要选择 id=2 的第二件事,那么您的预期结果将无法实现,因为 id=2 存在 2 行。我建议您这样做主键,以便您可以拥有不同的 id 或选择条件匹配 PA 和 DA 的数据