我对MySQL的了解非常有限,所以我希望我不要问一个真正愚蠢的问题。

我正在尝试做的是计算一个字段的值除以其他两个字段的乘积。

就像是:

(sum(salesorderlinedetail.rate) / (salesorderlinedetail.metalweight) *
(salesorderlinedetail.spotprice) AS `Premium`


原始数字可能看起来像是:

850 / (1646 * 0.5) = 1.03281


我试图使该结果显示为查询返回的每一行数据的另一列。

我猜想这可能需要在某处使用subselect语句。

最佳答案

让我们以您的“原始数字”示例为例,然后简单地进行替换(提示:全部用括号括起来):

850 / (1646 * 0.5)
850  ==> salesorderlinedetail.rate
1646 ==> salesorderlinedetail.metalweight
0.5  ==> salesorderlinedetail.spotprice

salesorderlinedetail.rate / ( salesorderlinedetail.metalweight * salesorderlinedetail.spotprice)


无需SUM(),因为那样会引入不加区别的聚合(除非您尚未与我们分享详细信息,否则:-)

10-04 17:51