gpt4 book ai didi

mysql - 在应重复一行的位置加入

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

正在努力想出一个仅限 mysql 的解决方案。

简化设置:

两个表:

Table Aid | value | price 1 | 2     | 5.95 2 | 5     | 7.95 3 | 30    | 8.95
Table B: color | min_value | max_valuegreen  |     1     |  3blue   |     3     | 10red    |    10     | 35orange |    25     | 50

根据表 B 中的定义,我想将颜色列连接到表 A 中的数据。在本例中,我需要知道与表 A 中所有项目按颜色关联的平均价格。然而,定义可能会重叠(即 id 3 既是红色又是橙色)。

我知道我可以使用 python(在这个项目的情况下)递归地遍历每种颜色并提取匹配值,然后提取平均价格,但我很乐意通过 mysql 来简化它。

感谢您的帮助/指导!

最佳答案

您不需要做任何特殊的事情,SQL 中的默认情况是,如果表中的一行与另一行中的两行匹配,您将在结果中得到两行。

SELECT color, avg(price)
FROM A, B
WHERE A.value BETWEEN B.min_value AND B.max_value
GROUP BY color

关于mysql - 在应重复一行的位置加入,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18581360/

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